diff mbox series

[af_alg,v2] crypto:af_alg cast ki_complete ternary op to int

Message ID 20191004175058.11850-1-ayush.sawal@chelsio.com (mailing list archive)
State Accepted
Delegated to: Herbert Xu
Headers show
Series [af_alg,v2] crypto:af_alg cast ki_complete ternary op to int | expand

Commit Message

Ayush Sawal Oct. 4, 2019, 5:50 p.m. UTC
when libkcapi test is executed  using HW accelerator, cipher operation
return -74.Since af_alg_async_cb->ki_complete treat err as unsigned int,
libkcapi receive 429467222 even though it expect -ve value.

Hence its required to cast resultlen to int so that proper
error is returned to libkcapi.

AEAD one shot non-aligned test 2(libkcapi test)
./../bin/kcapi   -x 10   -c "gcm(aes)" -i 7815d4b06ae50c9c56e87bd7
-k ea38ac0c9b9998c80e28fb496a2b88d9 -a
"853f98a750098bec1aa7497e979e78098155c877879556bb51ddeb6374cbaefc"
-t "c4ce58985b7203094be1d134c1b8ab0b" -q
"b03692f86d1b8b39baf2abb255197c98"

Signed-off-by: Ayush Sawal <ayush.sawal@chelsio.com>
Signed-off-by: Atul Gupta <atul.gupta@chelsio.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

v1: cast err and resultlen to long
Signed-off-by: Ayush Sawal <ayush.sawal@chelsio.com>
---
 crypto/af_alg.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Herbert Xu Oct. 10, 2019, 12:56 p.m. UTC | #1
On Fri, Oct 04, 2019 at 10:50:58AM -0700, Ayush Sawal wrote:
> when libkcapi test is executed  using HW accelerator, cipher operation
> return -74.Since af_alg_async_cb->ki_complete treat err as unsigned int,
> libkcapi receive 429467222 even though it expect -ve value.
> 
> Hence its required to cast resultlen to int so that proper
> error is returned to libkcapi.
> 
> AEAD one shot non-aligned test 2(libkcapi test)
> ./../bin/kcapi   -x 10   -c "gcm(aes)" -i 7815d4b06ae50c9c56e87bd7
> -k ea38ac0c9b9998c80e28fb496a2b88d9 -a
> "853f98a750098bec1aa7497e979e78098155c877879556bb51ddeb6374cbaefc"
> -t "c4ce58985b7203094be1d134c1b8ab0b" -q
> "b03692f86d1b8b39baf2abb255197c98"
> 
> Signed-off-by: Ayush Sawal <ayush.sawal@chelsio.com>
> Signed-off-by: Atul Gupta <atul.gupta@chelsio.com>
> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
> 
> v1: cast err and resultlen to long
> Signed-off-by: Ayush Sawal <ayush.sawal@chelsio.com>
> ---
>  crypto/af_alg.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Patch applied.  Thanks.
diff mbox series

Patch

diff --git a/crypto/af_alg.c b/crypto/af_alg.c
index 879cf23..0dceaab 100644
--- a/crypto/af_alg.c
+++ b/crypto/af_alg.c
@@ -1043,7 +1043,7 @@  void af_alg_async_cb(struct crypto_async_request *_req, int err)
 	af_alg_free_resources(areq);
 	sock_put(sk);
 
-	iocb->ki_complete(iocb, err ? err : resultlen, 0);
+	iocb->ki_complete(iocb, err ? err : (int)resultlen, 0);
 }
 EXPORT_SYMBOL_GPL(af_alg_async_cb);