diff options
author | Gerd Hoffmann <kraxel@redhat.com> | 2017-04-28 09:56:12 +0200 |
---|---|---|
committer | Gerd Hoffmann <kraxel@redhat.com> | 2017-05-04 08:31:48 +0200 |
commit | 3268a845f41253fb55852a8429c32b50f36f349a (patch) | |
tree | 2230bc38f2fb99ec0b27da1bba2b692798adace0 /audio/audio.c | |
parent | 5eaa8e1e0f09ff08c9c683676eabb82ad1179647 (diff) | |
download | qemu-3268a845f41253fb55852a8429c32b50f36f349a.zip qemu-3268a845f41253fb55852a8429c32b50f36f349a.tar.gz qemu-3268a845f41253fb55852a8429c32b50f36f349a.tar.bz2 |
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/audio.c')
-rw-r--r-- | audio/audio.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/audio/audio.c b/audio/audio.c index c8898d8..beafed2 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; |