summaryrefslogtreecommitdiffstats
path: root/cli/src/cli-cmd-parser.c
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 /cli/src/cli-cmd-parser.c
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
Diffstat (limited to 'cli/src/cli-cmd-parser.c')
-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 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)) {