]> git.ipfire.org Git - thirdparty/libvirt.git/commit
Change the way client event loop watches are managed
authorDaniel P. Berrange <berrange@redhat.com>
Fri, 10 Jul 2009 11:48:50 +0000 (12:48 +0100)
committerDaniel P. Berrange <berrange@redhat.com>
Thu, 16 Jul 2009 15:09:47 +0000 (16:09 +0100)
commitaf4dad0fa25707e50164e8e0323910499693ceff
treea912dba5f935acf06e5015f72d6500dd25629a69
parentc40e14b4becd73000a283625a6604c68c0046fe3
Change the way client event loop watches are managed

The current qemudRegisterClientEvent() code is used both for
registering the initial socket watch, and updating the already
registered watch. This causes unneccessary complexity in alot
of code which only cares about updating existing watches. The
updating of a watch cannot ever fail, nor is a reference to the
'qemud_server' object required.

This introduces a new qemudUpdateClientEvent() method for that
case, allowing the elimination of unneccessary error checking
and removal of the server back-reference in struct qemud_client.

* qemud/qemud.h: Remove 'server' field from struct qemud_client.
  Add qemudUpdateClientEvent() method. Remove 'update' param
  from qemudRegisterClientEvent method
* qemud/dispatch.c, qemud/qemud.c, qemud/remote.c: Update alot
  of code to use qemudUpdateClientEvent() instead of
  qemudRegisterClientEvent(). Move more logic from remoteRelayDomainEvent
  into remoteDispatchDomainEventSend.
qemud/dispatch.c
qemud/qemud.c
qemud/qemud.h
qemud/remote.c