Fix two command-line parsing problems:
- the argc check is wrong: it must be provided with the frontend device
- the ro/rw mode is optional, so default to rw if it is absent
Also, update the usage message accordingly.
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@xxxxxxxxxx>
diff -r 0f0a25c4c991 tools/libxl/xl_cmdimpl.c
--- a/tools/libxl/xl_cmdimpl.c Thu May 20 09:18:33 2010 -0700
+++ b/tools/libxl/xl_cmdimpl.c Thu May 20 14:37:24 2010 -0700
@@ -3444,7 +3444,7 @@
uint32_t fe_domid, be_domid = 0;
libxl_device_disk disk = { 0 };
- if ((argc < 3) || (argc > 6)) {
+ if ((argc < 4) || (argc > 6)) {
help("block-attach");
exit(0);
}
@@ -3489,7 +3489,7 @@
}
disk.virtpath = argv[3];
disk.unpluggable = 1;
- disk.readwrite = (argv[4][0] == 'w') ? 1 : 0;
+ disk.readwrite = (argc <= 4 || argv[4][0] == 'w') ? 1 : 0;
if (domain_qualifier_to_domid(argv[1], &fe_domid, 0) < 0) {
fprintf(stderr, "%s is an invalid domain identifier\n", argv[1]);
diff -r 0f0a25c4c991 tools/libxl/xl_cmdtable.c
--- a/tools/libxl/xl_cmdtable.c Thu May 20 09:18:33 2010 -0700
+++ b/tools/libxl/xl_cmdtable.c Thu May 20 14:37:24 2010 -0700
@@ -216,7 +216,7 @@
{ "block-attach",
&main_blockattach,
"Create a new virtual block device",
- "<Domain> <BackDev> <FrontDev> <Mode> [BackDomain]",
+ "<Domain> <BackDev> <FrontDev> [<Mode>] [BackDomain]",
},
{ "block-list",
&main_blocklist,
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|