]> git.ipfire.org Git - thirdparty/libvirt.git/commit
rpc: don't destroy xdr before creating it in virNetMessageEncodeHeader
authorJán Tomko <jtomko@redhat.com>
Thu, 29 Nov 2012 10:50:09 +0000 (11:50 +0100)
committerCole Robinson <crobinso@redhat.com>
Sun, 9 Dec 2012 21:53:40 +0000 (16:53 -0500)
commite8d28ec3fa031d6bbbec916bf09607992d7aa49b
tree90bf280c6d4085e48fb7f34e44302184ec08752b
parentcaf1377a12dd9994f910b7009058cb9399130f2c
rpc: don't destroy xdr before creating it in virNetMessageEncodeHeader

On OOM, xdr_destroy got called even though it wasn't created yet.

Found by coverity:
Error: UNINIT (CWE-457):
    libvirt-0.10.2/src/rpc/virnetmessage.c:214: var_decl: Declaring
    variable "xdr" without initializer.
    libvirt-0.10.2/src/rpc/virnetmessage.c:219: cond_true: Condition
    "virReallocN(&msg->buffer, 1UL /* sizeof (*msg->buffer) */,
    msg->bufferLength) < 0", taking true branch
    libvirt-0.10.2/src/rpc/virnetmessage.c:221: goto: Jumping to label
    "cleanup"
    libvirt-0.10.2/src/rpc/virnetmessage.c:257: label: Reached label
    "cleanup"
    libvirt-0.10.2/src/rpc/virnetmessage.c:258: uninit_use: Using
    uninitialized value "xdr.x_ops".
(cherry picked from commit 6e1fc35546bda31a27e9adb8a23c761cffc1aae6)
src/rpc/virnetmessage.c