diff options
Diffstat (limited to 'xlators/mgmt/glusterd/src')
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-volgen.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-volgen.c b/xlators/mgmt/glusterd/src/glusterd-volgen.c index ec14b665b..f69ddb2ba 100644 --- a/xlators/mgmt/glusterd/src/glusterd-volgen.c +++ b/xlators/mgmt/glusterd/src/glusterd-volgen.c @@ -160,6 +160,7 @@ static struct volopt_map_entry glusterd_volopt_map[] = { {"nfs.trusted-write", "nfs/server", "!nfs-trusted-write", NULL, DOC}, {"nfs.volume-access", "nfs/server", "!nfs-volume-access", NULL, DOC}, {"nfs.export-dir", "nfs/server", "!nfs-export-dir", NULL, DOC}, + {"nfs.disable", "nfs/server", "!nfs-disable", NULL, DOC}, {NULL, } }; @@ -1550,6 +1551,20 @@ nfs_option_handler (glusterfs_graph_t *graph, } + if (! strcmp (vme->option, "!nfs-disable")) { + ret = gf_asprintf (&aa, "nfs3.%s.disable", + volinfo->volname); + + if (ret != -1) { + ret = xlator_set_option (xl, aa, vme->value); + GF_FREE (aa); + } + + if (ret) + return -1; + } + + /*key = strchr (vme->key, '.') + 1; for (trav = xl->children; trav; trav = trav->next) { @@ -1620,6 +1635,9 @@ build_nfs_graph (glusterfs_graph_t *graph, dict_t *mod_dict) if (voliter->status != GLUSTERD_STATUS_STARTED) continue; + if (dict_get_str_boolean (voliter->dict, "nfs.disable", 0)) + continue; + ret = gf_asprintf (&skey, "rpc-auth.addr.%s.allow", voliter->volname); if (ret == -1) { |