]> xenbits.xensource.com Git - libvirt.git/commit
Introduce generic RPC client objects
authorDaniel P. Berrange <berrange@redhat.com>
Wed, 1 Dec 2010 16:35:50 +0000 (16:35 +0000)
committerDaniel P. Berrange <berrange@redhat.com>
Fri, 24 Jun 2011 10:48:45 +0000 (11:48 +0100)
commit434de30da545aea1379324b9098061201dd1529b
treee7023ad5f655ad7eb5814a7fb63b91112d62e066
parente23ec81db669f7ad88aed8fa3a0bc598b13b5101
Introduce generic RPC client objects

To facilitate creation of new clients using XDR RPC services,
pull alot of the remote driver code into a set of reusable
objects.

 - virNetClient: Encapsulates a socket connection to a
   remote RPC server. Handles all the network I/O for
   reading/writing RPC messages. Delegates RPC encoding
   and decoding to the registered programs

 - virNetClientProgram: Handles processing and dispatch
   of RPC messages for a single RPC (program,version).
   A program can register to receive async events
   from a client

 - virNetClientStream: Handles generic I/O stream
   integration to RPC layer

Each new client program now merely needs to define the list of
RPC procedures & events it wants and their handlers. It does
not need to deal with any of the network I/O functionality at
all.
cfg.mk
po/POTFILES.in
src/Makefile.am
src/rpc/virnetclient.c [new file with mode: 0644]
src/rpc/virnetclient.h [new file with mode: 0644]
src/rpc/virnetclientprogram.c [new file with mode: 0644]
src/rpc/virnetclientprogram.h [new file with mode: 0644]
src/rpc/virnetclientstream.c [new file with mode: 0644]
src/rpc/virnetclientstream.h [new file with mode: 0644]