mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-01-10 23:07:44 +00:00
b259e459b9
Let's fix this before we bake in a painful API. Since we know that we have exactly one non-negative fd on success, we might as well return the fd directly instead of forcing the user to pass in a pointer. Furthermore, I found some memory and fd leaks while reviewing the code - the idea is that on success, libvirtd will have handed two fds in two different directions: one to qemu, and one to the RPC client. * include/libvirt/libvirt.h.in (virDomainOpenGraphicsFD): Drop unneeded parameter. * src/driver.h (virDrvDomainOpenGraphicsFD): Likewise. * src/libvirt.c (virDomainOpenGraphicsFD): Adjust interface to return fd directly. * daemon/remote.c (remoteDispatchDomainOpenGraphicsFd): Adjust semantics. * src/qemu/qemu_driver.c (qemuDomainOpenGraphicsFD): Likewise, and plug fd leak. * src/remote/remote_driver.c (remoteDomainOpenGraphicsFD): Likewise, and plug memory and fd leak. Signed-off-by: Eric Blake <eblake@redhat.com> |
||
---|---|---|
.. | ||
libvirtd-config.c | ||
libvirtd-config.h | ||
libvirtd.aug | ||
libvirtd.c | ||
libvirtd.conf | ||
libvirtd.h | ||
libvirtd.init.in | ||
libvirtd.logrotate.in | ||
libvirtd.lxc.logrotate.in | ||
libvirtd.pod.in | ||
libvirtd.policy.in | ||
libvirtd.qemu.logrotate.in | ||
libvirtd.sasl | ||
libvirtd.service.in | ||
libvirtd.socket.in | ||
libvirtd.sysconf | ||
libvirtd.sysctl | ||
libvirtd.uml.logrotate.in | ||
libvirtd.upstart | ||
Makefile.am | ||
remote.c | ||
remote.h | ||
stream.c | ||
stream.h | ||
test_libvirtd.aug.in | ||
THREADS.txt |