* tools/virsh.c: libvirt should check if current interface is active before
undefine the interface, and don't allow to undefine a active interface.
---
tools/virsh.c | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/tools/virsh.c b/tools/virsh.c
index bd6fea7..899bf25 100644
--- a/tools/virsh.c
+++ b/tools/virsh.c
@@ -5675,6 +5675,16 @@ cmdInterfaceUndefine(vshControl *ctl, const vshCmd *cmd)
if (!(iface = vshCommandOptInterface(ctl, cmd, &name)))
return false;
+ if (virInterfaceIsActive(iface)) {
+ vshError(ctl,
+ _("a active interface like %s cannot be undefined;\n"
+ "to undefine, first destroy then undefine"
+ " using its name or MAC address"),
+ name);
+ virInterfaceFree(iface);
+ return false;
+ }
+
if (virInterfaceUndefine(iface) == 0) {
vshPrint(ctl, _("Interface %s undefined\n"), name);
} else {
--
1.7.1