[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [PATCH] [RESEND] To list basic information about the network.



On Tue, Nov 16, 2010 at 03:48:47PM +0800, Osier Yang wrote:
> * tools/virsh.c
> ---
>  tools/virsh.c |   59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  1 files changed, 59 insertions(+), 0 deletions(-)
>  mode change 100644 => 100755 tools/virsh.c
> 
> diff --git a/tools/virsh.c b/tools/virsh.c
> old mode 100644
> new mode 100755
> index d15a8df..3a74053
> --- a/tools/virsh.c
> +++ b/tools/virsh.c
> @@ -3678,6 +3678,64 @@ cmdNetworkDumpXML(vshControl *ctl, const vshCmd *cmd)
>      return ret;
>  }
> 
> +/*
> + * "net-info" command
> + */
> +static const vshCmdInfo info_network_info[] = {
> +    {"help", N_("network information")},
> +    {"desc", "Returns basic information about the network"},
> +    {NULL, NULL}
> +};
> +
> +static const vshCmdOptDef opts_network_info[] = {
> +    {"network", VSH_OT_DATA, VSH_OFLAG_REQ, N_("network name")},
> +    {NULL, 0, 0, NULL}
> +};
> +
> +static int
> +cmdNetworkInfo(vshControl *ctl, const vshCmd *cmd)
> +{
> +    virNetworkPtr network;
> +    char uuid[VIR_UUID_STRING_BUFLEN];
> +    int autostart;
> +    int persistent = -1;
> +    int active = -1;
> +    char *bridge = NULL;
> +
> +    if (!vshConnectionUsability(ctl, ctl->conn))
> +        return FALSE;
> +
> +    if (!(network = vshCommandOptNetworkBy(ctl, cmd, NULL,
> +                                           VSH_BYNAME)))
> +        return FALSE;
> +
> +    vshPrint(ctl, "%-15s %s\n", _("Name"), virNetworkGetName(network));
> +
> +    if (virNetworkGetUUIDString(network, uuid) == 0)
> +        vshPrint(ctl, "%-15s %s\n", _("UUID"), uuid);
> +
> +    active = virNetworkIsActive(network);
> +    if (active >= 0)
> +        vshPrint(ctl, "%-15s %s\n", _("Active:"), active? _("yes") : _("no"));
> +
> +    persistent = virNetworkIsPersistent(network);
> +    if (persistent < 0)
> +        vshPrint(ctl, "%-15s %s\n", _("Persistent:"), _("unknown"));
> +    else
> +        vshPrint(ctl, "%-15s %s\n", _("Persistent:"), persistent ? _("yes") : _("no"));
> +
> +    if (virNetworkGetAutostart(network, &autostart) < 0)
> +        vshPrint(ctl, "%-15s %s\n", _("Autostart:"), _("no autostart"));
> +    else
> +        vshPrint(ctl, "%-15s %s\n", _("Autostart:"), autostart ? _("yes") : _("no"));
> +
> +    bridge = virNetworkGetBridgeName(network);
> +    if (bridge)
> +        vshPrint(ctl, "%-15s %s\n", _("Bridge:"), bridge);
> +
> +    virNetworkFree(network);
> +    return TRUE;
> +}
> 
>  /*
>   * "iface-edit" command
> @@ -9879,6 +9937,7 @@ static const vshCmdDef commands[] = {
>      {"net-destroy", cmdNetworkDestroy, opts_network_destroy, info_network_destroy},
>      {"net-dumpxml", cmdNetworkDumpXML, opts_network_dumpxml, info_network_dumpxml},
>      {"net-edit", cmdNetworkEdit, opts_network_edit, info_network_edit},
> +    {"net-info", cmdNetworkInfo, opts_network_info, info_network_info},
>      {"net-list", cmdNetworkList, opts_network_list, info_network_list},
>      {"net-name", cmdNetworkName, opts_network_name, info_network_name},
>      {"net-start", cmdNetworkStart, opts_network_start, info_network_start},

ACK

Daniel
-- 
|: Red Hat, Engineering, London    -o-   http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://deltacloud.org :|
|: http://autobuild.org        -o-         http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505  -o-   F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]