提交 f605be82 编写于 作者: P Peter Krempa

virsh-domain-monitor: Update domain commands to use vshCommandOptStringReq

上级 1daa4ba3
...@@ -373,26 +373,25 @@ cmdDomblkinfo(vshControl *ctl, const vshCmd *cmd) ...@@ -373,26 +373,25 @@ cmdDomblkinfo(vshControl *ctl, const vshCmd *cmd)
{ {
virDomainBlockInfo info; virDomainBlockInfo info;
virDomainPtr dom; virDomainPtr dom;
bool ret = true; bool ret = false;
const char *device = NULL; const char *device = NULL;
if (!(dom = vshCommandOptDomain(ctl, cmd, NULL))) if (!(dom = vshCommandOptDomain(ctl, cmd, NULL)))
return false; return false;
if (vshCommandOptString(cmd, "device", &device) <= 0) { if (vshCommandOptStringReq(ctl, cmd, "device", &device) < 0)
virDomainFree(dom); goto cleanup;
return false;
}
if (virDomainGetBlockInfo(dom, device, &info, 0) < 0) { if (virDomainGetBlockInfo(dom, device, &info, 0) < 0)
virDomainFree(dom); goto cleanup;
return false;
}
vshPrint(ctl, "%-15s %llu\n", _("Capacity:"), info.capacity); vshPrint(ctl, "%-15s %llu\n", _("Capacity:"), info.capacity);
vshPrint(ctl, "%-15s %llu\n", _("Allocation:"), info.allocation); vshPrint(ctl, "%-15s %llu\n", _("Allocation:"), info.allocation);
vshPrint(ctl, "%-15s %llu\n", _("Physical:"), info.physical); vshPrint(ctl, "%-15s %llu\n", _("Physical:"), info.physical);
ret = true;
cleanup:
virDomainFree(dom); virDomainFree(dom);
return ret; return ret;
} }
...@@ -670,16 +669,13 @@ cmdDomIfGetLink(vshControl *ctl, const vshCmd *cmd) ...@@ -670,16 +669,13 @@ cmdDomIfGetLink(vshControl *ctl, const vshCmd *cmd)
if (!(dom = vshCommandOptDomain(ctl, cmd, NULL))) if (!(dom = vshCommandOptDomain(ctl, cmd, NULL)))
return false; return false;
if (vshCommandOptString(cmd, "interface", &iface) <= 0) { if (vshCommandOptStringReq(ctl, cmd, "interface", &iface) < 0)
virDomainFree(dom); goto cleanup;
return false;
}
if (vshCommandOptBool(cmd, "config")) if (vshCommandOptBool(cmd, "config"))
flags = VIR_DOMAIN_XML_INACTIVE; flags = VIR_DOMAIN_XML_INACTIVE;
desc = virDomainGetXMLDesc(dom, flags); if (!(desc = virDomainGetXMLDesc(dom, flags))) {
if (desc == NULL) {
vshError(ctl, _("Failed to get domain description xml")); vshError(ctl, _("Failed to get domain description xml"));
goto cleanup; goto cleanup;
} }
...@@ -752,8 +748,7 @@ cleanup: ...@@ -752,8 +748,7 @@ cleanup:
xmlXPathFreeObject(obj); xmlXPathFreeObject(obj);
xmlXPathFreeContext(ctxt); xmlXPathFreeContext(ctxt);
xmlFreeDoc(xml); xmlFreeDoc(xml);
if (dom) virDomainFree(dom);
virDomainFree(dom);
return ret; return ret;
} }
...@@ -891,7 +886,7 @@ cmdDomblkstat(vshControl *ctl, const vshCmd *cmd) ...@@ -891,7 +886,7 @@ cmdDomblkstat(vshControl *ctl, const vshCmd *cmd)
if (!(dom = vshCommandOptDomain(ctl, cmd, &name))) if (!(dom = vshCommandOptDomain(ctl, cmd, &name)))
return false; return false;
if (vshCommandOptString(cmd, "device", &device) <= 0) if (vshCommandOptStringReq(ctl, cmd, "device", &device) < 0)
goto cleanup; goto cleanup;
rc = virDomainBlockStatsFlags(dom, device, NULL, &nparams, 0); rc = virDomainBlockStatsFlags(dom, device, NULL, &nparams, 0);
...@@ -1016,19 +1011,17 @@ cmdDomIfstat(vshControl *ctl, const vshCmd *cmd) ...@@ -1016,19 +1011,17 @@ cmdDomIfstat(vshControl *ctl, const vshCmd *cmd)
virDomainPtr dom; virDomainPtr dom;
const char *name = NULL, *device = NULL; const char *name = NULL, *device = NULL;
struct _virDomainInterfaceStats stats; struct _virDomainInterfaceStats stats;
bool ret = false;
if (!(dom = vshCommandOptDomain(ctl, cmd, &name))) if (!(dom = vshCommandOptDomain(ctl, cmd, &name)))
return false; return false;
if (vshCommandOptString(cmd, "interface", &device) <= 0) { if (vshCommandOptStringReq(ctl, cmd, "interface", &device) < 0)
virDomainFree(dom); goto cleanup;
return false;
}
if (virDomainInterfaceStats(dom, device, &stats, sizeof(stats)) == -1) { if (virDomainInterfaceStats(dom, device, &stats, sizeof(stats)) == -1) {
vshError(ctl, _("Failed to get interface stats %s %s"), name, device); vshError(ctl, _("Failed to get interface stats %s %s"), name, device);
virDomainFree(dom); goto cleanup;
return false;
} }
if (stats.rx_bytes >= 0) if (stats.rx_bytes >= 0)
...@@ -1055,8 +1048,11 @@ cmdDomIfstat(vshControl *ctl, const vshCmd *cmd) ...@@ -1055,8 +1048,11 @@ cmdDomIfstat(vshControl *ctl, const vshCmd *cmd)
if (stats.tx_drop >= 0) if (stats.tx_drop >= 0)
vshPrint(ctl, "%s tx_drop %lld\n", device, stats.tx_drop); vshPrint(ctl, "%s tx_drop %lld\n", device, stats.tx_drop);
ret = true;
cleanup:
virDomainFree(dom); virDomainFree(dom);
return true; return ret;
} }
/* /*
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册