From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jeremy Fitzhardinge Subject: [PATCH] xl: fix block-attach command parsing Date: Thu, 20 May 2010 14:39:46 -0700 Message-ID: <4BF5AC22.2040409@goop.org> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Xen-devel Cc: Vincent Hanquez , Ian Jackson , Stefano Stabellini List-Id: xen-devel@lists.xenproject.org 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 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", - " [BackDomain]", + " [] [BackDomain]", }, { "block-list", &main_blocklist,