Anthony Liguori wrote:
Daniel P. Berrange wrote:Or have 2 monitor interaction modes. One mode uses the command line stylesuitable for people / scripting languages. The other umode ses a binary XDRprotocol for serializing the args & returns values for formal controlAPIs to use in a easy manner. It ought to be reasonably straightforward toadd a binary serialization format for all existing commandsI don't think binary is inherently easier to parse than text provided that some thought is put into the format of the textual output.
XDR (aka RFC 1014 & RFC 4506) does let you generate complex interfaces with relative ease. For example, here's the description of the remote protocol used by libvirt:
http://git.et.redhat.com/?p=libvirt.git;a=blob;f=qemud/remote_protocol.x;h=d409c74387c2642651896136aba9bc1e2b62b621;hb=HEAD "Parsing" is done for you by stubs that are generated from the above file.On the downside it turns out that it's not very well supported under Windows. For libvirt I had to basically port an XDR implementation by hand to MinGW and add extra functions from glibc to it.
I think we just want to levels of verbosity.
This would work too.On the point of controlling multiple qemu instances on a machine from a single place: Easiest way to do this would be to direct all the monitor sockets into a single known directory. Something along the lines of:
qemu -monitor unix:/var/lib/qemu-monitors/`uuidgen`,nowaitA control process can then just keep an eye on entries under that directory, and (unlike libvirtd) it's robust against the control process restarting.
Rich. -- Emerging Technologies, Red Hat - http://et.redhat.com/~rjones/ Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod Street, Windsor, Berkshire, SL4 1TE, United Kingdom. Registered in England and Wales under Company Registration No. 03798903
smime.p7s
Description: S/MIME Cryptographic Signature