diff options
Diffstat (limited to 'crypto')
| -rw-r--r-- | crypto/ahash.c | 7 | ||||
| -rw-r--r-- | crypto/api.c | 3 | ||||
| -rw-r--r-- | crypto/eseqiv.c | 3 |
3 files changed, 8 insertions, 5 deletions
diff --git a/crypto/ahash.c b/crypto/ahash.c index b2d1ee32cfe8..f3476374f764 100644 --- a/crypto/ahash.c +++ b/crypto/ahash.c | |||
| @@ -82,10 +82,11 @@ int crypto_hash_walk_done(struct crypto_hash_walk *walk, int err) | |||
| 82 | if (err) | 82 | if (err) |
| 83 | return err; | 83 | return err; |
| 84 | 84 | ||
| 85 | walk->offset = 0; | 85 | if (nbytes) { |
| 86 | 86 | walk->offset = 0; | |
| 87 | if (nbytes) | 87 | walk->pg++; |
| 88 | return hash_walk_next(walk); | 88 | return hash_walk_next(walk); |
| 89 | } | ||
| 89 | 90 | ||
| 90 | if (!walk->total) | 91 | if (!walk->total) |
| 91 | return 0; | 92 | return 0; |
diff --git a/crypto/api.c b/crypto/api.c index 314dab96840e..fd2545decb28 100644 --- a/crypto/api.c +++ b/crypto/api.c | |||
| @@ -221,7 +221,8 @@ struct crypto_alg *crypto_larval_lookup(const char *name, u32 type, u32 mask) | |||
| 221 | 221 | ||
| 222 | request_module(name); | 222 | request_module(name); |
| 223 | 223 | ||
| 224 | if (!((type ^ CRYPTO_ALG_NEED_FALLBACK) & mask) && | 224 | if (!((type ^ CRYPTO_ALG_NEED_FALLBACK) & mask & |
| 225 | CRYPTO_ALG_NEED_FALLBACK) && | ||
| 225 | snprintf(tmp, sizeof(tmp), "%s-all", name) < sizeof(tmp)) | 226 | snprintf(tmp, sizeof(tmp), "%s-all", name) < sizeof(tmp)) |
| 226 | request_module(tmp); | 227 | request_module(tmp); |
| 227 | 228 | ||
diff --git a/crypto/eseqiv.c b/crypto/eseqiv.c index 2a342c8e52b3..3ca3b669d5d5 100644 --- a/crypto/eseqiv.c +++ b/crypto/eseqiv.c | |||
| @@ -153,7 +153,8 @@ static int eseqiv_givencrypt(struct skcipher_givcrypt_request *req) | |||
| 153 | if (err) | 153 | if (err) |
| 154 | goto out; | 154 | goto out; |
| 155 | 155 | ||
| 156 | eseqiv_complete2(req); | 156 | if (giv != req->giv) |
| 157 | eseqiv_complete2(req); | ||
| 157 | 158 | ||
| 158 | out: | 159 | out: |
| 159 | return err; | 160 | return err; |
