From: Juergen Gross Date: Thu, 16 Sep 2010 17:29:26 +0000 (+0100) Subject: xl: correct vcpu-pin and vcpu-list parameter checking X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~11471 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=33c3ef4f761d1bebe1b5be263858074941733a25;p=xen.git xl: correct vcpu-pin and vcpu-list parameter checking attached patch corrects parameter checking of vcpu-pin and vcpu-list sub-commands. Signed-off-by: Juergen Gross Acked-by: Ian Jackson Signed-off-by: Ian Jackson --- diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c index 9d73ac7784..fd50bb517a 100644 --- a/tools/libxl/xl_cmdimpl.c +++ b/tools/libxl/xl_cmdimpl.c @@ -3402,7 +3402,7 @@ int main_vcpulist(int argc, char **argv) } } - vcpulist(argc - 2, argv + 2); + vcpulist(argc - optind, argv + optind); return 0; } @@ -3491,10 +3491,6 @@ int main_vcpupin(int argc, char **argv) { int opt; - if (argc != 5) { - help("vcpu-pin"); - return 0; - } while ((opt = getopt(argc, argv, "h")) != -1) { switch (opt) { case 'h': @@ -3506,7 +3502,12 @@ int main_vcpupin(int argc, char **argv) } } - vcpupin(argv[2], argv[3] , argv[4]); + if (optind != argc - 3) { + help("vcpu-pin"); + return 2; + } + + vcpupin(argv[optind], argv[optind+1] , argv[optind+2]); return 0; } @@ -3535,10 +3536,6 @@ int main_vcpuset(int argc, char **argv) { int opt; - if (argc != 4) { - help("vcpu-set"); - return 0; - } while ((opt = getopt(argc, argv, "h")) != -1) { switch (opt) { case 'h': @@ -3550,7 +3547,11 @@ int main_vcpuset(int argc, char **argv) } } - vcpuset(argv[2], argv[3]); + if (optind >= argc - 1) { + help("vcpu-set"); + return 2; + } + vcpuset(argv[optind], argv[optind+1]); return 0; }