crypto: drbg - use of kernel linked list

The DRBG-style linked list to manage input data that is fed into the
cipher invocations is replaced with the kernel linked list
implementation.

The change is transparent to users of the interfaces offered by the
DRBG. Therefore, no changes to the testmgr code is needed.

Reported-by: kbuild test robot <fengguang.wu@intel.com>
Signed-off-by: Stephan Mueller <smueller@chronox.de>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Этот коммит содержится в:
Stephan Mueller
2014-06-28 21:58:24 +02:00
коммит произвёл Herbert Xu
родитель 8fecaad77f
Коммит 8c98716601
2 изменённых файлов: 128 добавлений и 112 удалений

Просмотреть файл

@@ -50,6 +50,7 @@
#include <crypto/rng.h>
#include <linux/fips.h>
#include <linux/spinlock.h>
#include <linux/list.h>
/*
* Concatenation Helper and string operation helper
@@ -64,7 +65,7 @@
struct drbg_string {
const unsigned char *buf;
size_t len;
struct drbg_string *next;
struct list_head list;
};
static inline void drbg_string_fill(struct drbg_string *string,
@@ -72,7 +73,7 @@ static inline void drbg_string_fill(struct drbg_string *string,
{
string->buf = buf;
string->len = len;
string->next = NULL;
INIT_LIST_HEAD(&string->list);
}
struct drbg_state;
@@ -97,7 +98,7 @@ struct drbg_core {
};
struct drbg_state_ops {
int (*update)(struct drbg_state *drbg, struct drbg_string *seed,
int (*update)(struct drbg_state *drbg, struct list_head *seed,
int reseed);
int (*generate)(struct drbg_state *drbg,
unsigned char *buf, unsigned int buflen,