summaryrefslogtreecommitdiff
path: root/audio
diff options
context:
space:
mode:
authorGerd Hoffmann <kraxel@redhat.com>2017-04-28 09:56:12 +0200
committerGerd Hoffmann <kraxel@redhat.com>2017-05-04 08:31:48 +0200
commit3268a845f41253fb55852a8429c32b50f36f349a (patch)
tree2230bc38f2fb99ec0b27da1bba2b692798adace0 /audio
parent5eaa8e1e0f09ff08c9c683676eabb82ad1179647 (diff)
downloadqemu-3268a845f41253fb55852a8429c32b50f36f349a.zip
audio: release capture buffers
AUD_add_capture() allocates two buffers which are never released. Add the missing calls to AUD_del_capture(). Impact: Allows vnc clients to exhaust host memory by repeatedly starting and stopping audio capture. Fixes: CVE-2017-8309 Cc: P J P <ppandit@redhat.com> Cc: Huawei PSIRT <PSIRT@huawei.com> Reported-by: "Jiangxin (hunter, SCC)" <jiangxin1@huawei.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Prasad J Pandit <pjp@fedoraproject.org> Message-id: 20170428075612.9997-1-kraxel@redhat.com
Diffstat (limited to 'audio')
-rw-r--r--audio/audio.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/audio/audio.c b/audio/audio.c
index c8898d8422..beafed209b 100644
--- a/audio/audio.c
+++ b/audio/audio.c
@@ -2028,6 +2028,8 @@ void AUD_del_capture (CaptureVoiceOut *cap, void *cb_opaque)
sw = sw1;
}
QLIST_REMOVE (cap, entries);
+ g_free (cap->hw.mix_buf);
+ g_free (cap->buf);
g_free (cap);
}
return;