
On 06/22/2011 09:33 AM, Daniel P. Berrange wrote:
This patch defines the basics of a generic RPC protocol in XDR. This is wire ABI compatible with the original remote_protocol.x. It takes everything except for the RPC calls / events from that protocol
- The basic header virNetMessageHeader (aka remote_message_header) - The error object virNetMessageError (aka remote_error) - Two dummy objects virNetMessageDomain & virNetMessageNetwork sadly needed to keep virNetMessageError ABI compatible with the old remote_error
The RPC protocol supports method calls, async events and bidirectional data streams as before
* src/Makefile.am: Add rules for generating RPC code from protocol & define a new libvirt-net-rpc.la helper library * src/rpc/virnetprotocol.x: New generic RPC protocol * src/rpc/virnetprotocol.c, src/rpc/virnetprotocol.h: Generated from virnetprotocol.x
Now that generated files are not kept in git, do you need to mention them in this commit message? I guess it doesn't hurt, though.
--- src/Makefile.am | 19 +++- src/rpc/virnetprotocol.x | 217 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 232 insertions(+), 4 deletions(-) create mode 100644 src/rpc/virnetprotocol.x
diff --git a/src/Makefile.am b/src/Makefile.am index 4f9bfc9..93f39fb 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -570,13 +570,11 @@ $(srcdir)/remote/remote_driver.c: $(REMOTE_DRIVER_GENERATED)
endif WITH_REMOTE
-$(srcdir)/remote/%_protocol.c: $(srcdir)/remote/%_protocol.x \ - $(srcdir)/remote/%_protocol.h $(srcdir)/remote/rpcgen_fix.pl +%protocol.c: %protocol.x %protocol.h $(srcdir)/remote/rpcgen_fix.pl
Nice that we already require GNU make.
+++ b/src/rpc/virnetprotocol.x @@ -0,0 +1,217 @@ +/* -*- c -*- + * virnetprotocol.x: basic protocol for all RPC services. + * + * Copyright (C) 2006-2010 Red Hat, Inc.
Also 2011. ACK with the copyright nit fixed. -- Eric Blake eblake@redhat.com +1-801-349-2682 Libvirt virtualization library http://libvirt.org