On Thu, May 25, 2017 at 10:26:47AM -0700, Peter wrote: > As far as I know libvirt doesn't currently have a remoteable API. It does > have a daemon that communicates with clients via a XDR RPC. > (https://libvirt.org/internals/rpc.html) However from what I'm hearing the > RPC is considered an internal implementation and shouldn't be used by > external applications. Is that still the case? Is there any chance of > getting talking the daemon directly using the XDR standard for a subset of > methods blessed as part of the externally supported API? That's correct - the XDR protocol is a private implementation detail between the libvirtd daemon and libvirt client library. The /only/ supported way of using libvirt is via the client library API, or one of the many language bindings written on top of it. A number of the libvirt virtualization drivers are implemented entirely in the client library and don't involve libvirtd at all. > An alternative is to implement a standards based remotable API, using > something like dbus or REST, that can be used by external applications. > I imagine that this would be at a bit of a higher level than the current RPC > and contain at least some of the logic around the actions it performs rather > than being a direct passthrough to the daemon. > > Of course that is a pretty big undertaking and would, in my opinion, only be > worth it if there is broader interest in the community and use cases beyond > what cockpit would like to. I imagine any DBus API would be a pretty straightforward 1-1 mapping from the C api to DBus methods & signals. For a REST API I think you would quite possibly want to build something higher level which will involve more design thought. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list