diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/internal/xi_build.c | 8 | ||||
-rw-r--r-- | tools/internal/xi_destroy.c | 11 | ||||
-rw-r--r-- | tools/internal/xi_start.c | 11 | ||||
-rw-r--r-- | tools/internal/xi_stop.c | 11 |
4 files changed, 34 insertions, 7 deletions
diff --git a/tools/internal/xi_build.c b/tools/internal/xi_build.c index 8c1cdb91da..b6c30d2a64 100644 --- a/tools/internal/xi_build.c +++ b/tools/internal/xi_build.c @@ -361,7 +361,13 @@ int main(int argc, char **argv) return 1; } - domain_id = atol(argv[1]); + domain_id = atoi(argv[1]); + if ( domain_id == 0 ) + { + ERROR("Did you really mean domain 0?"); + return 1; + } + if ( (tot_pages = get_tot_pages(domain_id)) < 0 ) { PERROR("Could not find total pages for domain"); diff --git a/tools/internal/xi_destroy.c b/tools/internal/xi_destroy.c index d6b7a09763..b3a975e73f 100644 --- a/tools/internal/xi_destroy.c +++ b/tools/internal/xi_destroy.c @@ -21,7 +21,7 @@ static int kill_domain(int dom_id, int force) int main(int argc, char **argv) { - int ret; + int ret, dom; if ( argv[0] != NULL ) argv0 = argv[0]; @@ -37,7 +37,14 @@ int main(int argc, char **argv) if ( (argc == 3) && strcmp("-f", argv[1]) ) goto usage; - ret = kill_domain(atoi(argv[argc-1]), argc == 3); + dom = atoi(argv[argc-1]); + if ( dom == 0 ) + { + ERROR("Did you really mean domain 0?"); + return 1; + } + + ret = kill_domain(dom, argc == 3); return (ret != 0) ? 1 : 0; } diff --git a/tools/internal/xi_start.c b/tools/internal/xi_start.c index b21cc84f9f..e04fc8b502 100644 --- a/tools/internal/xi_start.c +++ b/tools/internal/xi_start.c @@ -20,7 +20,7 @@ static int start_domain(int id) int main(int argc, char **argv) { - int rc; + int rc, dom; if ( argv[0] != NULL ) argv0 = argv[0]; @@ -31,7 +31,14 @@ int main(int argc, char **argv) return 1; } - rc = start_domain(atol(argv[1])); + dom = atoi(argv[1]); + if ( dom == 0 ) + { + ERROR("Did you really mean domain 0?"); + return 1; + } + + rc = start_domain(dom);; return (rc != 0) ? 1 : 0; } diff --git a/tools/internal/xi_stop.c b/tools/internal/xi_stop.c index 5cd732df3a..1c10fe4eb8 100644 --- a/tools/internal/xi_stop.c +++ b/tools/internal/xi_stop.c @@ -19,7 +19,7 @@ static int stop_domain(int id) int main(int argc, char **argv) { - int rc; + int rc, dom; if ( argv[0] != NULL ) argv0 = argv[0]; @@ -30,7 +30,14 @@ int main(int argc, char **argv) return 1; } - rc = stop_domain(atol(argv[1])); + dom = atoi(argv[1]); + if ( dom == 0 ) + { + ERROR("Did you really mean domain 0?"); + return 1; + } + + rc = stop_domain(dom); return (rc != 0) ? 1 : 0; } |