lkml.org 
[lkml]   [2013]   [May]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[081/126] crypto: algif - suppress sending source address information in recvmsg
    3.6.11.3 stable review patch.
    If anyone has any objections, please let me know.

    ------------------

    From: Mathias Krause <minipli@googlemail.com>

    [ Upstream commit 72a763d805a48ac8c0bf48fdb510e84c12de51fe ]

    The current code does not set the msg_namelen member to 0 and therefore
    makes net/socket.c leak the local sockaddr_storage variable to userland
    -- 128 bytes of kernel stack memory. Fix that.

    Cc: <stable@vger.kernel.org> # 2.6.38
    Signed-off-by: Mathias Krause <minipli@googlemail.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
    ---
    crypto/algif_hash.c | 2 ++
    crypto/algif_skcipher.c | 1 +
    2 files changed, 3 insertions(+)

    diff --git a/crypto/algif_hash.c b/crypto/algif_hash.c
    index ef5356c..0262210 100644
    --- a/crypto/algif_hash.c
    +++ b/crypto/algif_hash.c
    @@ -161,6 +161,8 @@ static int hash_recvmsg(struct kiocb *unused, struct socket *sock,
    else if (len < ds)
    msg->msg_flags |= MSG_TRUNC;

    + msg->msg_namelen = 0;
    +
    lock_sock(sk);
    if (ctx->more) {
    ctx->more = 0;
    diff --git a/crypto/algif_skcipher.c b/crypto/algif_skcipher.c
    index 6a6dfc0..a1c4f0a 100644
    --- a/crypto/algif_skcipher.c
    +++ b/crypto/algif_skcipher.c
    @@ -432,6 +432,7 @@ static int skcipher_recvmsg(struct kiocb *unused, struct socket *sock,
    long copied = 0;

    lock_sock(sk);
    + msg->msg_namelen = 0;
    for (iov = msg->msg_iov, iovlen = msg->msg_iovlen; iovlen > 0;
    iovlen--, iov++) {
    unsigned long seglen = iov->iov_len;
    --
    1.7.10.4



    \
     
     \ /
      Last update: 2013-05-07 07:43    [W:4.137 / U:0.112 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site