On Tue, Mar 10, 2009 at 11:36:01AM -0400, Laine Stump wrote: > To help with lutter's network configuration project, I'm looking at > adding API functions to libvirt which are essentially pass-throughs to > netcf library APIs called by libvirtd. Can someone point me to good > examples of APIs that are not hypervisor driver-dependent (and possibly > not host OS-dependent either - I believe the final intent is for netcf > to handle all host OS dependencies itself) to use as a basis for writing > these new APIs? Well you can start to look at existng network interfaces like virNetworkCreateXML you can find the signatures in include/libvirt/libvirt.h[.in] and the real API entry point in src/libvirt.c Then everything is dispatched to some kind of drivers associated to the connection (depending how it was established). > At a more detailed level, a quick trace through the code of some other > APIs got me as far as the call to the "call" function, with an RPC code, > but I didn't find where that call was caught (and the RPC code > interpreted, eg REMOTE_PROC_NETWORK_CREATE_XML - cscope couldn't find > any other reference to this value) on the libvirtd side. I'm about run > virsh and libvirtd under gdb to learn this by experimentation, but if > someone wants to take the fun out of it for me, hints would be gladly > accepted! ;-) Well depending on how the client library is being used to connect to the host there is multiple variation but the implermentation will go though a driver, with either a local execution or a remote one, where the execution will be called from the daemon (in qemud). The fact that you ended up in a remote execution is probably normal if you were not root on the target box, and in many case still everything is centralized in the daemon. For the remote stubs they are of course generated which may explain why your index didn't include said funtions. Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@xxxxxxxxxxxx | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list