]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - include/crypto/algapi.h
Merge branch 'linus' into tracing/hw-branch-tracing
[karo-tx-linux.git] / include / crypto / algapi.h
index fef272a8ceeb9f4fa00995c90d851092d3c60372..010545436efa22593f4a124c9a68849f78a85872 100644 (file)
@@ -22,9 +22,18 @@ struct seq_file;
 
 struct crypto_type {
        unsigned int (*ctxsize)(struct crypto_alg *alg, u32 type, u32 mask);
+       unsigned int (*extsize)(struct crypto_alg *alg,
+                               const struct crypto_type *frontend);
        int (*init)(struct crypto_tfm *tfm, u32 type, u32 mask);
-       void (*exit)(struct crypto_tfm *tfm);
+       int (*init_tfm)(struct crypto_tfm *tfm,
+                       const struct crypto_type *frontend);
        void (*show)(struct seq_file *m, struct crypto_alg *alg);
+       struct crypto_alg *(*lookup)(const char *name, u32 type, u32 mask);
+
+       unsigned int type;
+       unsigned int maskclear;
+       unsigned int maskset;
+       unsigned int tfmsize;
 };
 
 struct crypto_instance {
@@ -98,7 +107,6 @@ extern const struct crypto_type crypto_ablkcipher_type;
 extern const struct crypto_type crypto_aead_type;
 extern const struct crypto_type crypto_blkcipher_type;
 extern const struct crypto_type crypto_hash_type;
-extern const struct crypto_type crypto_ahash_type;
 
 void crypto_mod_put(struct crypto_alg *alg);
 
@@ -240,6 +248,11 @@ static inline struct crypto_hash *crypto_spawn_hash(struct crypto_spawn *spawn)
        return __crypto_hash_cast(crypto_spawn_tfm(spawn, type, mask));
 }
 
+static inline void *crypto_hash_ctx(struct crypto_hash *tfm)
+{
+       return crypto_tfm_ctx(&tfm->base);
+}
+
 static inline void *crypto_hash_ctx_aligned(struct crypto_hash *tfm)
 {
        return crypto_tfm_ctx_aligned(&tfm->base);
@@ -315,40 +328,5 @@ static inline int crypto_requires_sync(u32 type, u32 mask)
        return (type ^ CRYPTO_ALG_ASYNC) & mask & CRYPTO_ALG_ASYNC;
 }
 
-static inline void *crypto_ahash_ctx(struct crypto_ahash *tfm)
-{
-       return crypto_tfm_ctx(&tfm->base);
-}
-
-static inline struct ahash_alg *crypto_ahash_alg(
-       struct crypto_ahash *tfm)
-{
-       return &crypto_ahash_tfm(tfm)->__crt_alg->cra_ahash;
-}
-
-static inline int ahash_enqueue_request(struct crypto_queue *queue,
-                                            struct ahash_request *request)
-{
-       return crypto_enqueue_request(queue, &request->base);
-}
-
-static inline struct ahash_request *ahash_dequeue_request(
-       struct crypto_queue *queue)
-{
-       return ahash_request_cast(crypto_dequeue_request(queue));
-}
-
-static inline void *ahash_request_ctx(struct ahash_request *req)
-{
-       return req->__ctx;
-}
-
-static inline int ahash_tfm_in_queue(struct crypto_queue *queue,
-                                         struct crypto_ahash *tfm)
-{
-       return crypto_tfm_in_queue(queue, crypto_ahash_tfm(tfm));
-}
-
-
 #endif /* _CRYPTO_ALGAPI_H */