diff options
author | shishir gowda <shishirng@gluster.com> | 2010-09-04 01:12:09 +0000 |
---|---|---|
committer | Vijay Bellur <vijay@dev.gluster.com> | 2010-09-06 02:21:40 -0700 |
commit | 4309c9b0d658185b1b7f07a98240b85870d35204 (patch) | |
tree | b483cf0fd2f894c1b3c877514a28b66b1aa7ab5f | |
parent | 4c87d30724b29a83c6a0f4a101468824fa76ac19 (diff) |
Add brick hostname should not be localhost
Add brick hostname should not be localhost or 127.0.0.1, but valid
nodeid or ip. This will prevent volfiles being generated at
respective glusterd's as hostname would be localhost
Signed-off-by: shishir gowda <shishirng@gluster.com>
Signed-off-by: Vijay Bellur <vijay@dev.gluster.com>
BUG: 1505 (volume create/add-brick requires ip or hostname for localhost)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1505
-rw-r--r-- | cli/src/cli-cmd-parser.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/cli/src/cli-cmd-parser.c b/cli/src/cli-cmd-parser.c index cf9357c4128..cc14dfd34a1 100644 --- a/cli/src/cli-cmd-parser.c +++ b/cli/src/cli-cmd-parser.c @@ -332,6 +332,9 @@ cli_cmd_volume_add_brick_parse (const char **words, int wordcount, int j = 0; char *tmp_list = NULL; char *tmpptr = NULL; + char *host_name = NULL; + char *tmp = NULL; + char *freeptr = NULL; GF_ASSERT (words); GF_ASSERT (options); @@ -408,6 +411,26 @@ cli_cmd_volume_add_brick_parse (const char **words, int wordcount, ret = -1; goto out; } + + host_name = gf_strdup(words[brick_index]); + if (!host_name) { + ret = -1; + gf_log ("cli", GF_LOG_ERROR, "unable to allocate " + "memory"); + goto out; + } + freeptr = host_name; + strtok_r(host_name, ":", &tmp); + if (!(strcmp(host_name, "localhost") && + strcmp (host_name, "127.0.0.1"))) { + cli_out ("Please provide a valid hostname/ip other " + "localhost or 127.0.0.1"); + ret = -1; + GF_FREE (freeptr); + goto out; + } + GF_FREE (freeptr); + tmp_list = strdup(brick_list+1); j = 0; while(( brick_count != 0) && (j < brick_count)) { |