I've gone through the first two steps of danpb's "Guide to Adding New
libvirt APIs", and thought this would be a good time to send a copy of
my work to the list to make sure I'm going in the right direction. Now
is (yet another) good time to tell me "You're doing it wrong!".
Basically, I've defined the public api in libvirt.h (actually
libvirt.h.in - it's a real pain to have generated files under source
control - it almost led me to mistakenly lose my modifications a
couple times after running autogen, until I actually looked in the
directory containing the file and saw the *.in file), done all the
toplevel functions in libvirt.c, and whatever ancillary definitions
and small functions were needed by them.
In a 3rd patch, I also added stuff to configure.in that detects the
presence of libnetcf and 1) turns on WITH_NETCF in config.h and 2)
adds -lnetcf to LDFLAGS. I noticed that some other similar items have
been added to configure.in by peppering little changes in several
spots throughout the file; I preferred adding all my stuff in one
place to make it easier to follow (and less likely to cause merge
conflicts).
So far this has been a *lot* of cut-n-paste, which makes me a bit uneasy
(both because of the lesser problem that it almost always leads to
errors caused by missing bits and pieces that need modification after
the paste, and the greater problem that using this method may indicate
I'm operating mechanically, without having adequate understanding of
what I'm trying to do).