On 07/15/2011 12:04 AM, Daniel P. Berrange wrote:
On Fri, Jul 15, 2011 at 12:04:17AM +0800, ajia(a)redhat.com wrote:
> * 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;
> + }
This kind of check should be done in the drivers, rather than virsh
Regards,
Daniel
Yeah, Michal has sent patches to update drivers, thanks for your review.
Regards,
Alex