[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 6/6]xl: Add 'xl tmem-shared-auth' command
Add 'xl tmem-shared-auth' command Signed-off-by: Yang Hongyang<yanghy@xxxxxxxxxxxxxx> diff -r d432ff60f69d tools/libxl/libxl.c --- a/tools/libxl/libxl.c Wed May 19 23:37:22 2010 +0800 +++ b/tools/libxl/libxl.c Thu May 20 00:11:32 2010 +0800 @@ -2917,3 +2917,19 @@ return rc; } + +int libxl_tmem_shared_auth(struct libxl_ctx *ctx, uint32_t domid, + char* uuid, int auth) +{ + int rc; + + rc = xc_tmem_auth(ctx->xch, domid, uuid, auth); + if (rc < 0) { + XL_LOG_ERRNOVAL(ctx, XL_LOG_ERROR, rc, + "Can not set tmem shared auth"); + return -1; + } + + return rc; +} + diff -r d432ff60f69d tools/libxl/libxl.h --- a/tools/libxl/libxl.h Wed May 19 23:37:22 2010 +0800 +++ b/tools/libxl/libxl.h Thu May 20 00:11:32 2010 +0800 @@ -519,5 +519,7 @@ int libxl_tmem_thaw(struct libxl_ctx *ctx, uint32_t domid); int libxl_tmem_set(struct libxl_ctx *ctx, uint32_t domid, char* name, uint32_t set); +int libxl_tmem_shared_auth(struct libxl_ctx *ctx, uint32_t domid, char* uuid, + int auth); #endif /* LIBXL_H */ diff -r d432ff60f69d tools/libxl/xl_cmdimpl.c --- a/tools/libxl/xl_cmdimpl.c Wed May 19 23:37:22 2010 +0800 +++ b/tools/libxl/xl_cmdimpl.c Thu May 20 00:11:32 2010 +0800 @@ -3883,3 +3883,63 @@ exit(0); } + +int main_tmem_shared_auth(int argc, char **argv) +{ + char *autharg = NULL; + char *endptr = NULL; + char *dom = NULL; + char *uuid = NULL; + int auth = -1; + int all = 0; + int opt; + + while ((opt = getopt(argc, argv, "au:A:h")) != -1) { + switch (opt) { + case 'a': + all = 1; + break; + case 'u': + uuid = optarg; + break; + case 'A': + autharg = optarg; + break; + case 'h': + help("tmem-shared-auth"); + exit(0); + default: + fprintf(stderr, "option `%c' not supported.\n", opt); + break; + } + } + + dom = argv[optind]; + if (!dom && all == 0) { + fprintf(stderr, "You must specify -a or a domain id.\n\n"); + help("tmem-shared-auth"); + exit(1); + } + + if (all) + domid = -1; + else + find_domain(dom); + + if (uuid == NULL || autharg == NULL) { + fprintf(stderr, "No uuid or auth specified.\n\n"); + help("tmem-shared-auth"); + exit(1); + } + + auth = strtol(autharg, &endptr, 10); + if (*endptr != '\0') { + fprintf(stderr, "Invalid auth, valid auth are <0|1>.\n\n"); + exit(1); + } + + libxl_tmem_shared_auth(&ctx, domid, uuid, auth); + + exit(0); +} + diff -r d432ff60f69d tools/libxl/xl_cmdimpl.h --- a/tools/libxl/xl_cmdimpl.h Wed May 19 23:37:22 2010 +0800 +++ b/tools/libxl/xl_cmdimpl.h Thu May 20 00:11:32 2010 +0800 @@ -57,6 +57,7 @@ int main_tmem_destroy(int argc, char **argv); int main_tmem_thaw(int argc, char **argv); int main_tmem_set(int argc, char **argv); +int main_tmem_shared_auth(int argc, char **argv); void help(char *command); diff -r d432ff60f69d tools/libxl/xl_cmdtable.c --- a/tools/libxl/xl_cmdtable.c Wed May 19 23:37:22 2010 +0800 +++ b/tools/libxl/xl_cmdtable.c Thu May 20 00:11:32 2010 +0800 @@ -257,6 +257,15 @@ " -c CAP Cap (int)\n" " -p COMPRESS Compress (int)", }, + { "tmem-shared-auth", + &main_tmem_shared_auth, + "De/authenticate shared tmem pool", + "[<Domain>|-a] [-u[=UUID] [-A[=AUTH]", + " -a Authenticate for all tmem pools\n" + " -u UUID Specify uuid\n" + " (abcdef01-2345-6789-1234-567890abcdef)\n" + " -A AUTH 0=auth,1=deauth", + }, }; int cmdtable_len = sizeof(cmd_table)/sizeof(struct cmd_spec); -- Regards Yang Hongyang _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |