qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v4 06/14] nbd: Send message along with server NB


From: Paolo Bonzini
Subject: Re: [Qemu-devel] [PATCH v4 06/14] nbd: Send message along with server NBD_REP_ERR errors
Date: Mon, 27 Jun 2016 14:02:10 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.1.1


On 26/06/2016 00:15, Eric Blake wrote:
> 
> +/* Send an error reply.
> + * Return -errno to kill connection, 0 to continue negotiation. */
> +static int GCC_FMT_ATTR(4, 5)
> +    nbd_negotiate_send_rep_err(QIOChannel *ioc, uint32_t type,
> +                               uint32_t opt, const char *fmt, ...)
> +{
> +    va_list va;
> +    char *msg;
> +    int ret;
> +    size_t len;
> +
> +    va_start(va, fmt);
> +    msg = g_strdup_vprintf(fmt, va);

This leaks below.

Paolo

> +    va_end(va);
> +    len = strlen(msg);
> +    assert(len < 4096);
> +    TRACE("sending error message \"%s\"", msg);
> +    ret = nbd_negotiate_send_rep_len(ioc, type, opt, len);
> +    if (ret < 0) {
> +        return ret;
> +    }
> +    if (nbd_negotiate_write(ioc, msg, len) != len) {
> +        LOG("write failed (error message)");
> +        return -EINVAL;
> +    }
> +    return 0;



reply via email to

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