qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] io: fix mem leak in websock error path


From: Philippe Mathieu-Daudé
Subject: Re: [Qemu-devel] [PATCH] io: fix mem leak in websock error path
Date: Wed, 11 Oct 2017 14:29:03 -0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0

Hi Daniel,

On 10/11/2017 12:38 PM, Daniel P. Berrange wrote:
> Coverity pointed out the 'date' is not free()d in the error
> path
> 
> Signed-off-by: Daniel P. Berrange <address@hidden>
> ---
>  io/channel-websock.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/io/channel-websock.c b/io/channel-websock.c
> index aa35ef3274..a1c10ab719 100644
> --- a/io/channel-websock.c
> +++ b/io/channel-websock.c
> @@ -355,6 +355,7 @@ static void 
> qio_channel_websock_handshake_send_res_ok(QIOChannelWebsock *ioc,
>                              QIO_CHANNEL_WEBSOCK_GUID_LEN,
>                              &accept,
>                              errp) < 0) {
> +        g_free(date);

It looks cleaner to only call qio_channel_websock_date_str() before to
use date, which is _after_ qcrypto_hash_base64() might fails.

>          qio_channel_websock_handshake_send_res_err(
>              ioc, QIO_CHANNEL_WEBSOCK_HANDSHAKE_RES_SERVER_ERR);
>          return;
    }

+   date = qio_channel_websock_date_str();
    qio_channel_websock_handshake_send_res(
        ioc, QIO_CHANNEL_WEBSOCK_HANDSHAKE_RES_OK, date, accept);

    g_free(date);
    g_free(accept);
}




reply via email to

[Prev in Thread] Current Thread [Next in Thread]