(I'm sending v2 of this patch series for Michal Privoznik, as I had to tweak some things while integrating with the netcf part that I'm writing, and he will be out of the office tomorrow and thus unable to resend. In addition to the few small things I needed to change to make everything compile and work properly once the build system had a version of netcf supporting the new API, Michal incorporated all the comments from reviewers of the first version before forwarding the patches to me for integration.) This patch series implements three new APIs for the interface driver which support transactional changes to the host's network config - at any point you can begin a transaction (which saves a snapshot of the current config), then make any changes you like to the config, and later either commit those changes (the current implementation just removes the snapshotted files) or rollback to the original config. The actual implementation of this functionality lives in the netcf library; these patches create pass-through functions that call out to netcf on the machine that's running libvirtd. Most importantly, note that uses of "start" in the API names have been changed to "begin", and rather than a single virsh command with multiple subcommands, there are now three separate commands: iface-begin, iface-commit, and iface-rollback. Thanks to using AC_CHECK_LIB in configure.ac, this code can safely be pushed and built on systems that don't yet have a new enough netcf to contain the API extensions - those functions are simply not implemented in that case (and return the appropriate error). -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list