diff options
Diffstat (limited to 'crypto/ahash.c')
-rw-r--r-- | crypto/ahash.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/crypto/ahash.c b/crypto/ahash.c index 9f98956b17fc..ba5292d69ebd 100644 --- a/crypto/ahash.c +++ b/crypto/ahash.c | |||
@@ -162,6 +162,12 @@ static int ahash_setkey(struct crypto_ahash *tfm, const u8 *key, | |||
162 | return ahash->setkey(tfm, key, keylen); | 162 | return ahash->setkey(tfm, key, keylen); |
163 | } | 163 | } |
164 | 164 | ||
165 | static int ahash_nosetkey(struct crypto_ahash *tfm, const u8 *key, | ||
166 | unsigned int keylen) | ||
167 | { | ||
168 | return -ENOSYS; | ||
169 | } | ||
170 | |||
165 | int crypto_ahash_import(struct ahash_request *req, const u8 *in) | 171 | int crypto_ahash_import(struct ahash_request *req, const u8 *in) |
166 | { | 172 | { |
167 | struct crypto_ahash *tfm = crypto_ahash_reqtfm(req); | 173 | struct crypto_ahash *tfm = crypto_ahash_reqtfm(req); |
@@ -194,7 +200,7 @@ static int crypto_init_ahash_ops(struct crypto_tfm *tfm, u32 type, u32 mask) | |||
194 | crt->update = alg->update; | 200 | crt->update = alg->update; |
195 | crt->final = alg->final; | 201 | crt->final = alg->final; |
196 | crt->digest = alg->digest; | 202 | crt->digest = alg->digest; |
197 | crt->setkey = ahash_setkey; | 203 | crt->setkey = alg->setkey ? ahash_setkey : ahash_nosetkey; |
198 | crt->digestsize = alg->digestsize; | 204 | crt->digestsize = alg->digestsize; |
199 | 205 | ||
200 | return 0; | 206 | return 0; |