forked from pool/libvirt
27 lines
789 B
Diff
27 lines
789 B
Diff
|
commit ca697e90d5bd6a6dfb94bfb6d4438bdf9a44b739
|
||
|
Author: Ján Tomko <jtomko@redhat.com>
|
||
|
Date: Fri Apr 12 17:30:56 2013 +0200
|
||
|
|
||
|
daemon: fix leak after listing all volumes
|
||
|
|
||
|
CVE-2013-1962
|
||
|
|
||
|
remoteDispatchStoragePoolListAllVolumes wasn't freeing the pool.
|
||
|
The pool also held a reference to the connection, preventing it from
|
||
|
getting freed and closing the netcf interface driver, which held two
|
||
|
sockets open.
|
||
|
|
||
|
Index: libvirt-1.0.5/daemon/remote.c
|
||
|
===================================================================
|
||
|
--- libvirt-1.0.5.orig/daemon/remote.c
|
||
|
+++ libvirt-1.0.5/daemon/remote.c
|
||
|
@@ -4226,6 +4226,8 @@ cleanup:
|
||
|
virStorageVolFree(vols[i]);
|
||
|
VIR_FREE(vols);
|
||
|
}
|
||
|
+ if (pool)
|
||
|
+ virStoragePoolFree(pool);
|
||
|
return rv;
|
||
|
}
|
||
|
|