mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-22 21:55:25 +00:00
interface: new public API for network config change transactions
This is the API agreed on in: https://www.redhat.com/archives/libvir-list/2011-May/msg00026.html (with a slight name change to use "...begin" rather than "...start"). This implements transactional changes to the host network config. When a transaction is begun with ncf_change_begin(), all other netcf APIs will continue to work as they always have, but a snapshot of the existing config will be taken, allowing reversion (rollback, using ncf_change_rollback()) to the exact state of config at the time ncf_change_begin() was called. Alternately, if it's determined that the new changes are acceptable, ncf_change_commit() can be called, which will eliminate the snapshot and make the changes permanent. As a failsafe measure, if neither ncf_change_commit() or ncf_change_rollback() is called by the next time the system reboots, the netcf-transaction initscript will be automatically called to rollback the changes.
This commit is contained in:
parent
89fcf6f3f0
commit
ba0b5934b3
@ -1424,6 +1424,13 @@ int virInterfaceDestroy (virInterfacePtr iface,
|
||||
int virInterfaceRef (virInterfacePtr iface);
|
||||
int virInterfaceFree (virInterfacePtr iface);
|
||||
|
||||
int virInterfaceChangeBegin (virConnectPtr conn,
|
||||
unsigned int flags);
|
||||
int virInterfaceChangeCommit (virConnectPtr conn,
|
||||
unsigned int flags);
|
||||
int virInterfaceChangeRollback(virConnectPtr conn,
|
||||
unsigned int flags);
|
||||
|
||||
/**
|
||||
* virStoragePool:
|
||||
*
|
||||
|
@ -444,6 +444,9 @@ LIBVIRT_0.9.2 {
|
||||
virDomainSetSchedulerParametersFlags;
|
||||
virDomainMigrate2;
|
||||
virDomainMigrateToURI2;
|
||||
virInterfaceChangeBegin;
|
||||
virInterfaceChangeCommit;
|
||||
virInterfaceChangeRollback;
|
||||
} LIBVIRT_0.9.0;
|
||||
|
||||
# .... define new API here using predicted next version number ....
|
||||
|
Loading…
Reference in New Issue
Block a user