
On Tue, Oct 21, 2008 at 03:14:49PM -0400, Ben Guthro wrote:
[PATCH 04/12] Domain Events - rpc changes Changes to the RPC protocol
remote_dispatch_localvars.h | 3 +++ remote_dispatch_proc_switch.h | 18 ++++++++++++++++++ remote_dispatch_prototypes.h | 3 +++ remote_protocol.c | 29 +++++++++++++++++++++++++++++ remote_protocol.h | 25 +++++++++++++++++++++++++ remote_protocol.x | 25 ++++++++++++++++++++++++- 6 files changed, 102 insertions(+), 1 deletion(-)
diff --git a/qemud/remote_protocol.x b/qemud/remote_protocol.x index f1bd9ff..b7e41aa 100644 --- a/qemud/remote_protocol.x +++ b/qemud/remote_protocol.x @@ -965,6 +965,25 @@ struct remote_storage_vol_get_path_ret { remote_nonnull_string name; };
+/** + * Events Register/Deregister: + * It would seem rpcgen does not like both args, and ret + * to be null. It will not generate the prototype otherwise. + * Pass back a redundant boolean to force prototype generation. + */
Oh yes, I'd come across this problem in the past too. Adding the cb_registerd field is harmless enough, so lets do it.
+struct remote_domain_events_register_ret { + int cb_registered; +}; + +struct remote_domain_events_deregister_ret { + int cb_registered; +}; + +struct remote_domain_event_ret { + remote_nonnull_domain dom; + int event; +}; + /*----- Protocol. -----*/
/* Define the program number, protocol version and procedure numbers here. */ @@ -1086,7 +1105,11 @@ enum remote_procedure { REMOTE_PROC_NODE_GET_FREE_MEMORY = 102,
REMOTE_PROC_DOMAIN_BLOCK_PEEK = 103, - REMOTE_PROC_DOMAIN_MEMORY_PEEK = 104 + REMOTE_PROC_DOMAIN_MEMORY_PEEK = 104, + + REMOTE_PROC_DOMAIN_EVENTS_REGISTER = 105, + REMOTE_PROC_DOMAIN_EVENTS_DEREGISTER = 106, + REMOTE_PROC_DOMAIN_EVENT = 107 };
ACK to this patch. Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|