libvirt/daemon
Matthias Bolte c6f1459eb9 Fix memory leaks in libvirtd's message processing
Commit 47cab73499 changed the way how
qemud_client_message objects were reused. Before this commit
remoteDispatchClientRequest() reused the received message for normal responses
and to report non-fatal errors. If a fatal error occurred qemudWorker() frees
the message. After this commit non-fatal errors are reported by
remoteSerializeReplyError() using a new qemud_client_message object and the
original message leaks.

To fix this leak the original message has to be freed if
remoteSerializeReplyError() succeeds. If remoteSerializeReplyError()
fails the original message is freed in qemudWorker().

* daemon/dispatch.c: free qemud_client_message objects that will not be reused
  and would leak otherwise, also free the allocated qemud_client_message object
  in remoteSerializeError() if an error occurs
2009-09-30 02:27:00 +02:00
..
.gitignore Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00
dispatch.c Fix memory leaks in libvirtd's message processing 2009-09-30 02:27:00 +02:00
dispatch.h Helper functions for processing data streams in libvirtd 2009-09-29 15:48:58 +01:00
event.c Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00
event.h Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00
libvirtd.aug Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00
libvirtd.c Handle outgoing data streams in libvirtd 2009-09-29 15:48:58 +01:00
libvirtd.conf Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00
libvirtd.h Handle outgoing data streams in libvirtd 2009-09-29 15:48:58 +01:00
libvirtd.init.in Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00
libvirtd.logrotate.in Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00
libvirtd.policy-0 Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00
libvirtd.policy-1 Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00
libvirtd.sasl Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00
libvirtd.sysconf Allow control over QEMU audio backend 2009-09-29 15:53:10 +01:00
Makefile.am Helper functions for processing data streams in libvirtd 2009-09-29 15:48:58 +01:00
mdns.c Rename daemon main code 2009-09-21 14:41:45 +01:00
mdns.h Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00
remote_dispatch_args.h Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00
remote_dispatch_prototypes.h Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00
remote_dispatch_ret.h Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00
remote_dispatch_table.h Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00
remote_generate_stubs.pl Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00
remote.c Introduce virStrncpy. 2009-09-22 20:10:00 +02:00
remote.h Rename daemon main code 2009-09-21 14:41:45 +01:00
stream.c Handle outgoing data streams in libvirtd 2009-09-29 15:48:58 +01:00
stream.h Handle outgoing data streams in libvirtd 2009-09-29 15:48:58 +01:00
test_libvirtd.aug Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00
THREADING.txt Rename qemud/ directory to daemon/ 2009-09-21 14:41:42 +01:00