summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorshishir gowda <shishirng@gluster.com>2010-09-04 01:12:09 +0000
committerVijay Bellur <vijay@dev.gluster.com>2010-09-06 02:21:40 -0700
commit4309c9b0d658185b1b7f07a98240b85870d35204 (patch)
treeb483cf0fd2f894c1b3c877514a28b66b1aa7ab5f
parent4c87d30724b29a83c6a0f4a101468824fa76ac19 (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.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/cli/src/cli-cmd-parser.c b/cli/src/cli-cmd-parser.c
index cf9357c41..cc14dfd34 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)) {