浏览代码

crypto: algif_aead - Temporarily disable all AEAD algorithms

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>
Herbert Xu 10 年之前
父节点
当前提交
3e90950d36
共有 2 个文件被更改,包括 8 次插入1 次删除
  1. 2 1
      crypto/algif_aead.c
  2. 6 0
      include/linux/crypto.h

+ 2 - 1
crypto/algif_aead.c

@@ -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)

+ 6 - 0
include/linux/crypto.h

@@ -101,6 +101,12 @@
  */
 #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).
  */