From: Enrico Scholz Date: Wed, 24 Mar 2004 04:45:29 +0000 (+0000) Subject: prefer '--xid' instead of '--ctx' X-Git-Tag: VERSION_0_10~227 X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f242c493e4feccf2bef4ad10ce8d64c2e3ecc56e;p=util-vserver.git prefer '--xid' instead of '--ctx' use vc_xidopt2xid() git-svn-id: http://svn.linux-vserver.org/svn/util-vserver/trunk@1348 94cd875c-1c1d-0410-91d2-eb244daf1a30 --- diff --git a/util-vserver/src/chcontext.c b/util-vserver/src/chcontext.c index 69dde7f..9c03445 100644 --- a/util-vserver/src/chcontext.c +++ b/util-vserver/src/chcontext.c @@ -66,6 +66,7 @@ CMDLINE_OPTIONS[] = { { "version", no_argument, 0, CMD_VERSION }, { "cap", required_argument, 0, CMD_CAP }, { "ctx", required_argument, 0, CMD_CTX }, + { "xid", required_argument, 0, CMD_CTX }, { "disconnect", no_argument, 0, CMD_DISCONNECT }, { "domainname", required_argument, 0, CMD_DOMAINNAME }, { "flag", required_argument, 0, CMD_FLAG }, @@ -97,7 +98,7 @@ showHelp(int fd, char const *cmd, int res) WRITE_MSG(fd, "Usage: "); WRITE_STR(fd, cmd); WRITE_MSG(fd, - " [--cap [!]] [--secure] [--ctx ] [--disconnect]\n" + " [--cap [!]] [--secure] [--xid ] [--disconnect]\n" " [--domainname ] [--hostname ] [--flag +]\n" " [--silent] [--] command arguments ...\n" "\n" @@ -119,12 +120,12 @@ showHelp(int fd, char const *cmd, int res) " repeated several time.\n" " See /usr/include/linux/capability.h\n" "\n" - "--ctx num\n" + "--xid num\n" " Select the context. On root in context 0 is allowed to\n" " select a specific context.\n" " Context number 1 is special. It can see all processes\n" " in any contexts, but can't kill them though.\n" - " Option --ctx may be repeated several times to specify up to 16 contexts.\n" + " Option --xid may be repeated several times to specify up to 16 contexts.\n" "--disconnect\n" " Start the command in background and make the process\n" @@ -311,7 +312,7 @@ int main (int argc, char *argv[]) WRITE_MSG(2, "Too many contexts given\n"); exit(255); } - args.ctxs[args.nbctx++] = atoi(optarg); + args.ctxs[args.nbctx++] = Evc_xidopt2xid(optarg, true); break; diff --git a/util-vserver/src/vkill.c b/util-vserver/src/vkill.c index dad9cb7..cdf77c7 100644 --- a/util-vserver/src/vkill.c +++ b/util-vserver/src/vkill.c @@ -35,19 +35,25 @@ #include #include +#define ENSC_WRAPPERS_VSERVER 1 +#include + #define CMD_HELP 0x8000 #define CMD_VERSION 0x8001 +int wrapper_exit_code = 1; + static struct option const CMDLINE_OPTIONS[] = { - { "help", no_argument, 0, CMD_HELP }, - { "version", no_argument, 0, CMD_VERSION }, + { "help", no_argument, 0, CMD_HELP }, + { "version", no_argument, 0, CMD_VERSION }, + { "xid", required_argument, 0, 'c' }, { 0,0,0,0 } }; struct Arguments { - xid_t ctx; + xid_t xid; int sig; }; @@ -66,7 +72,7 @@ showHelp(int fd, char const *cmd, int res) WRITE_MSG(fd, "Usage: "); WRITE_STR(fd, cmd); WRITE_MSG(fd, - " [-c ] [-s ] [--] *\n" + " [--xid|-c ] [-s ] [--] *\n" "Please report bugs to " PACKAGE_BUGREPORT "\n"); exit(res); } @@ -104,7 +110,7 @@ str2sig(char const *str) #if defined(VC_ENABLE_API_LEGACY) inline static ALWAYSINLINE int -kill_wrapper_legacy(xid_t UNUSED ctx, char const *proc, int UNUSED sig) +kill_wrapper_legacy(xid_t UNUSED xid, char const *proc, int UNUSED sig) { pid_t pid = fork(); if (pid==-1) { @@ -126,13 +132,13 @@ kill_wrapper_legacy(xid_t UNUSED ctx, char const *proc, int UNUSED sig) } static int -kill_wrapper(xid_t ctx, char const *pid, int sig) +kill_wrapper(xid_t xid, char const *pid, int sig) { - //printf("kill_wrapper(%u, %s, %i)\n", ctx, pid, sig); - if (vc_ctx_kill(ctx,atoi(pid),sig)==-1) { + //printf("kill_wrapper(%u, %s, %i)\n", xid, pid, sig); + if (vc_ctx_kill(xid,atoi(pid),sig)==-1) { int err = errno; if (vc_get_version(VC_CAT_COMPAT)==-1) - return kill_wrapper_legacy(ctx, pid, sig); + return kill_wrapper_legacy(xid, pid, sig); else { errno = err; perror("vkill: vc_ctx_kill()"); @@ -144,9 +150,9 @@ kill_wrapper(xid_t ctx, char const *pid, int sig) } #else // VC_ENABLE_API_LEGACY inline static int -kill_wrapper(xid_t ctx, char const *pid, int sig) +kill_wrapper(xid_t xid, char const *pid, int sig) { - if (vc_ctx_kill(ctx,atoi(pid),sig)==-1) { + if (vc_ctx_kill(xid,atoi(pid),sig)==-1) { perror("vkill: vc_ctx_kill()"); return 1; } @@ -159,7 +165,7 @@ int main(int argc, char *argv[]) { int fail = 0; struct Arguments args = { - .ctx = VC_NOCTX, + .xid = VC_NOCTX, .sig = SIGTERM, }; @@ -170,8 +176,8 @@ int main(int argc, char *argv[]) switch (c) { case CMD_HELP : showHelp(1, argv[0], 0); case CMD_VERSION : showVersion(); - case 'c' : args.ctx = atoi(optarg); break; - case 's' : args.sig = str2sig(optarg); break; + case 'c' : args.xid = Evc_xidopt2xid(optarg,true); break; + case 's' : args.sig = str2sig(optarg); break; default : WRITE_MSG(2, "Try '"); WRITE_STR(2, argv[0]); @@ -186,15 +192,15 @@ int main(int argc, char *argv[]) return EXIT_FAILURE; } - if (args.ctx==VC_NOCTX && optind==argc) { + if (args.xid==VC_NOCTX && optind==argc) { WRITE_MSG(2, "No pid specified\n"); return EXIT_FAILURE; } if (optind==argc) - fail += kill_wrapper(args.ctx, "0", args.sig); + fail += kill_wrapper(args.xid, "0", args.sig); else for (;optind] [--fill-rate ] [--interval ] [--tokens ] [--tokens_min ] [--tokens_max ] [--cpu_mask ] [--] [ *]\n" + " [--xid ] [--fill-rate ] [--interval ] [--tokens ] [--tokens_min ] [--tokens_max ] [--cpu_mask ] [--] [ *]\n" "\n" "Please report bugs to " PACKAGE_BUGREPORT "\n"); @@ -97,13 +98,13 @@ int main(int argc, char *argv[]) switch (c) { case CMD_HELP : showHelp(1, argv[0], 0); case CMD_VERSION : showVersion(); - case CMD_XID : xid = atoi(optarg); break; - case CMD_FRATE : sched.fill_rate = atoi(optarg); break; - case CMD_INTERVAL : sched.interval = atoi(optarg); break; - case CMD_TOKENS : sched.tokens = atoi(optarg); break; - case CMD_TOK_MIN : sched.tokens_min = atoi(optarg); break; - case CMD_TOK_MAX : sched.tokens_max = atoi(optarg); break; - case CMD_CPU_MASK : sched.cpu_mask = atoi(optarg); break; + case CMD_XID : xid = Evc_xidopt2xid(optarg,true); break; + case CMD_FRATE : sched.fill_rate = atoi(optarg); break; + case CMD_INTERVAL : sched.interval = atoi(optarg); break; + case CMD_TOKENS : sched.tokens = atoi(optarg); break; + case CMD_TOK_MIN : sched.tokens_min = atoi(optarg); break; + case CMD_TOK_MAX : sched.tokens_max = atoi(optarg); break; + case CMD_CPU_MASK : sched.cpu_mask = atoi(optarg); break; default : WRITE_MSG(2, "Try '"); WRITE_STR(2, argv[0]);