lkml.org 
[lkml]   [2020]   [Aug]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.7 120/204] crypto: af_alg - Fix regression on empty requests
    Date
    From: Herbert Xu <herbert@gondor.apana.org.au>

    [ Upstream commit 662bb52f50bca16a74fe92b487a14d7dccb85e1a ]

    Some user-space programs rely on crypto requests that have no
    control metadata. This broke when a check was added to require
    the presence of control metadata with the ctx->init flag.

    This patch fixes the regression by setting ctx->init as long as
    one sendmsg(2) has been made, with or without a control message.

    Reported-by: Sachin Sant <sachinp@linux.vnet.ibm.com>
    Reported-by: Naresh Kamboju <naresh.kamboju@linaro.org>
    Fixes: f3c802a1f300 ("crypto: algif_aead - Only wake up when...")
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    crypto/af_alg.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    diff --git a/crypto/af_alg.c b/crypto/af_alg.c
    index 9fcb91ea10c41..5882ed46f1adb 100644
    --- a/crypto/af_alg.c
    +++ b/crypto/af_alg.c
    @@ -851,6 +851,7 @@ int af_alg_sendmsg(struct socket *sock, struct msghdr *msg, size_t size,
    err = -EINVAL;
    goto unlock;
    }
    + ctx->init = true;

    if (init) {
    ctx->enc = enc;
    @@ -858,7 +859,6 @@ int af_alg_sendmsg(struct socket *sock, struct msghdr *msg, size_t size,
    memcpy(ctx->iv, con.iv->iv, ivsize);

    ctx->aead_assoclen = con.aead_assoclen;
    - ctx->init = true;
    }

    while (size) {
    --
    2.25.1


    \
     
     \ /
      Last update: 2020-08-20 11:40    [W:4.065 / U:0.020 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site