diff options
| author | Christophe Jaillet <christophe.jaillet@wanadoo.fr> | 2017-09-26 02:17:44 -0400 |
|---|---|---|
| committer | Herbert Xu <herbert@gondor.apana.org.au> | 2017-10-07 00:04:31 -0400 |
| commit | 5125e4e867ab888f2d4b443a1ce463adefb370db (patch) | |
| tree | eb5749a57fcbce511b034c08f1b3ba1075d3241a | |
| parent | 532f419cde077ffe9616c97902af177fbb868b17 (diff) | |
crypto: xts - Fix an error handling path in 'create()'
All error handling paths 'goto err_drop_spawn' except this one.
In order to avoid some resources leak, we should do it as well here.
Fixes: f1c131b45410 ("crypto: xts - Convert to skcipher")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
| -rw-r--r-- | crypto/xts.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/crypto/xts.c b/crypto/xts.c index d86c11a8c882..e31828ed0046 100644 --- a/crypto/xts.c +++ b/crypto/xts.c | |||
| @@ -554,8 +554,10 @@ static int create(struct crypto_template *tmpl, struct rtattr **tb) | |||
| 554 | ctx->name[len - 1] = 0; | 554 | ctx->name[len - 1] = 0; |
| 555 | 555 | ||
| 556 | if (snprintf(inst->alg.base.cra_name, CRYPTO_MAX_ALG_NAME, | 556 | if (snprintf(inst->alg.base.cra_name, CRYPTO_MAX_ALG_NAME, |
| 557 | "xts(%s)", ctx->name) >= CRYPTO_MAX_ALG_NAME) | 557 | "xts(%s)", ctx->name) >= CRYPTO_MAX_ALG_NAME) { |
| 558 | return -ENAMETOOLONG; | 558 | err = -ENAMETOOLONG; |
| 559 | goto err_drop_spawn; | ||
| 560 | } | ||
| 559 | } else | 561 | } else |
| 560 | goto err_drop_spawn; | 562 | goto err_drop_spawn; |
| 561 | 563 | ||
