From c5a927ef1adfd51445946eb921728e2d72f1b6ca Mon Sep 17 00:00:00 2001 From: Kaushik BV Date: Fri, 5 Aug 2011 09:02:49 +0530 Subject: mgmt/glusterd: Minor fixes for volume set help/help-xml - Overallocate the buffer-size of the xmlBuffer to 16KB - Introduce synthetic options in xlators - Change the tags of XML output Change-Id: I8c9ab466973b5c12accba4741c336e380a180bed BUG: 2041 Reviewed-on: http://review.gluster.com/168 Tested-by: Gluster Build System Reviewed-by: Anand Avati --- xlators/debug/io-stats/src/io-stats.c | 16 +++++++++++++++- xlators/mgmt/glusterd/src/glusterd-volgen.c | 15 ++++++++------- xlators/nfs/server/src/nfs.c | 11 +++++++++++ xlators/protocol/server/src/server.c | 18 ++++++++++++++++++ 4 files changed, 52 insertions(+), 8 deletions(-) diff --git a/xlators/debug/io-stats/src/io-stats.c b/xlators/debug/io-stats/src/io-stats.c index fff16ede2..5c292567c 100644 --- a/xlators/debug/io-stats/src/io-stats.c +++ b/xlators/debug/io-stats/src/io-stats.c @@ -1787,8 +1787,22 @@ struct volume_options options[] = { { .key = { "latency-measurement" }, .type = GF_OPTION_TYPE_BOOL, }, - { .key = {"log-level"}, + /* XXX These are synthetic options which are actually recognized and * + * validated in addr.c, added here to get visibiliity in * + * volume set command */ + { .key = {"client-log-level"}, .type = GF_OPTION_TYPE_STR, + .default_value = "INFO", + .description = "Changes the log-level of the clients", + .value = { "DEBUG", "WARNING", "ERROR", "INFO", + "CRITICAL", "NONE", "TRACE"} + }, + { .key = {"brick-log-level"}, + .type = GF_OPTION_TYPE_STR, + .default_value = "INFO", + .description = "Changes the log-level of the bricks", + .value = { "DEBUG", "WARNING", "ERROR", "INFO", + "CRITICAL", "NONE", "TRACE"} }, { .key = {NULL} }, }; diff --git a/xlators/mgmt/glusterd/src/glusterd-volgen.c b/xlators/mgmt/glusterd/src/glusterd-volgen.c index de01ce608..50111ae76 100644 --- a/xlators/mgmt/glusterd/src/glusterd-volgen.c +++ b/xlators/mgmt/glusterd/src/glusterd-volgen.c @@ -135,8 +135,8 @@ static struct volopt_map_entry glusterd_volopt_map[] = { {"network.ping-timeout", "protocol/client", NULL, NULL, NO_DOC }, {"network.inode-lru-limit", "protocol/server", NULL, NULL, NO_DOC }, /* NODOC */ - {"auth.allow", "protocol/server", "!server-auth", "*", DOC}, - {"auth.reject", "protocol/server", "!server-auth", NULL, DOC}, + {"auth.allow", "protocol/server", "!auth.addr.*.allow", "*", DOC}, + {"auth.reject", "protocol/server", "!auth.addr.*.reject", NULL, DOC}, {"transport.keepalive", "protocol/server", "transport.socket.keepalive", NULL, NO_DOC}, {"server.allow-insecure", "protocol/server", "rpc-auth-allow-insecure", NULL, NO_DOC}, @@ -159,7 +159,7 @@ static struct volopt_map_entry glusterd_volopt_map[] = { {"nfs.port", "nfs/server", "nfs.port", NULL, GLOBAL_DOC}, {"nfs.rpc-auth-unix", "nfs/server", "!rpc-auth.auth-unix.*", NULL, DOC}, - {"nfs.rpc-auth-null", "nfs/server", "!rpc-auth.auth.null.*", NULL, DOC}, + {"nfs.rpc-auth-null", "nfs/server", "!rpc-auth.auth-null.*", NULL, DOC}, {"nfs.rpc-auth-allow", "nfs/server", "!rpc-auth.addr.*.allow", NULL, DOC}, {"nfs.rpc-auth-reject", "nfs/server", "!rpc-auth.addr.*.reject", NULL, DOC}, {"nfs.ports-insecure", "nfs/server", "!rpc-auth.ports.*.insecure", NULL, DOC}, @@ -1066,7 +1066,8 @@ server_auth_option_handler (glusterfs_graph_t *graph, int ret = 0; char *key = NULL; - if (strcmp (vme->option, "!server-auth") != 0) + if ( (strcmp (vme->option, "!auth.addr.*.allow") != 0) || + (strcmp (vme->option, "!auth.addr.*.reject") != 0)) return 0; xl = first_of (graph); @@ -1343,7 +1344,7 @@ init_sethelp_xml_doc (xmlTextWriterPtr *writer, xmlBufferPtr *buf) { int ret; - *buf = xmlBufferCreateSize (8192); + *buf = xmlBufferCreateSize (16 * GF_UNIT_KB); if (buf == NULL) { gf_log ("glusterd", GF_LOG_ERROR, "Error creating the xml " "buffer"); @@ -1369,7 +1370,7 @@ init_sethelp_xml_doc (xmlTextWriterPtr *writer, xmlBufferPtr *buf) } ret = xmlTextWriterStartElement(*writer, - (xmlChar *)"volumeOptionsDefaults"); + (xmlChar *)"options"); if (ret < 0) { gf_log ("glusterd", GF_LOG_ERROR, "Could not create an " "xmlElemetnt"); @@ -1395,7 +1396,7 @@ xml_add_volset_element (xmlTextWriterPtr writer, const char *name, GF_ASSERT (name); - ret = xmlTextWriterStartElement(writer, (xmlChar *) "volumeOption"); + ret = xmlTextWriterStartElement(writer, (xmlChar *) "option"); if (ret < 0) { gf_log ("glusterd", GF_LOG_ERROR, "Could not create an " "xmlElemetnt"); diff --git a/xlators/nfs/server/src/nfs.c b/xlators/nfs/server/src/nfs.c index ebc6911b9..550b2bb91 100644 --- a/xlators/nfs/server/src/nfs.c +++ b/xlators/nfs/server/src/nfs.c @@ -1001,12 +1001,23 @@ struct volume_options options[] = { "Please consult gluster-users list before using this " "option." }, + /* XXX These are synthetic options which are actually recognized and * + * validated in addr.c, added here to get visibiliity in * + * volume set command */ { .key = {"nfs-disable"}, .type = GF_OPTION_TYPE_BOOL, .default_value = "off", .description = "This option is used to enable/disable NFS server" "for individual volume." }, + { + .key = {"nfs.transport-type"}, + .type = GF_OPTION_TYPE_STR, + .default_value = "", + .description = "This options is used to change the transport type of" + " NFS Server.", + }, + { .key = {NULL} }, }; diff --git a/xlators/protocol/server/src/server.c b/xlators/protocol/server/src/server.c index bbc7a2585..c7c8d8b88 100644 --- a/xlators/protocol/server/src/server.c +++ b/xlators/protocol/server/src/server.c @@ -882,5 +882,23 @@ struct volume_options options[] = { { .key = {"rpc-auth-allow-insecure"}, .type = GF_OPTION_TYPE_BOOL, }, + + /* XXX These are synthetic options which are actually recognized and * + * validated in addr.c, added here to get visibiliity in * + * volume set help/help-xml */ + + { .key = {"auth.addr.*.allow"}, + .type = GF_OPTION_TYPE_ANY, + .default_value = "*", + .description = "'IP addresses/Host name' of the clients which should" + " be allowed to access the the volume." + }, + { .key = {"auth.addr.*.reject"}, + .type = GF_OPTION_TYPE_ANY, + .default_value = "", + .description = "'IP addresses/Host name' of the clients which should" + " be denied to access the volume." + }, + { .key = {NULL} }, }; -- cgit