crypto: algif_aead - Temporarily disable all AEAD algorithms
authorHerbert Xu <herbert@gondor.apana.org.au>
Mon, 22 Jun 2015 02:31:40 +0000 (10:31 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Mon, 22 Jun 2015 07:49:30 +0000 (15:49 +0800)
As the AEAD conversion is still ongoing, we do not yet wish to
export legacy AEAD implementations to user-space, as their calling
convention will change.

This patch actually disables all AEAD algorithms because some of
them (e.g., cryptd) will need to be modified to propagate this flag.

Subsequent patches will reenable them on an individual basis.

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

index 38a6cab7aecacd308066ba40dcdae95ae6d5c6e0..e0408a480d2f4eb8f818c9590ec9a3d7d166e25d 100644 (file)
@@ -514,7 +514,8 @@ static struct proto_ops algif_aead_ops = {
 
 static void *aead_bind(const char *name, u32 type, u32 mask)
 {
-       return crypto_alloc_aead(name, type, mask);
+       return crypto_alloc_aead(name, type | CRYPTO_ALG_AEAD_NEW,
+                                mask | CRYPTO_ALG_AEAD_NEW);
 }
 
 static void aead_release(void *private)
index 964e5735a6a9900bbc427cb5132e024f6e924c60..81ef938b0a8e9d34342ddbf8459a7a8b30b489d1 100644 (file)
  */
 #define CRYPTO_ALG_INTERNAL            0x00002000
 
+/*
+ * Temporary flag used to prevent legacy AEAD implementations from
+ * being used by user-space.
+ */
+#define CRYPTO_ALG_AEAD_NEW            0x00004000
+
 /*
  * Transform masks and values (for crt_flags).
  */