summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSage Weil <sage@inktank.com>2012-10-17 17:44:12 -0700
committerSage Weil <sage@inktank.com>2012-10-17 23:04:45 -0700
commitea42eb1f7866fed0e843257ce05e34503fd0129c (patch)
tree8bea8f7ab5435ebb8f84c09356b87eeef595f3d9
parentb0164d9902c834c95187f6b277f58a30d26cc4d3 (diff)
downloadceph-ea42eb1f7866fed0e843257ce05e34503fd0129c.tar.gz
addr_parsing: make , and ; and ' ' all delimiters
Instead of just ,. Currently "foo.com, bar.com" will fail because of the space after the comma. This patches fixes that, and makes all delim chars interchangeable. Signed-off-by: Sage Weil <sage@inktank.com>
-rw-r--r--src/include/addr_parsing.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/include/addr_parsing.c b/src/include/addr_parsing.c
index bc7dcf3bd86..275488df489 100644
--- a/src/include/addr_parsing.c
+++ b/src/include/addr_parsing.c
@@ -52,6 +52,7 @@ char *resolve_addrs(const char *orig_str)
char *tok, *port_str, *saveptr = NULL;
int len, pos;
char *buf = strdup(orig_str);
+ const char *delim = ",; ";
len = BUF_SIZE;
new_str = (char *)malloc(len);
@@ -60,7 +61,7 @@ char *resolve_addrs(const char *orig_str)
pos = 0;
- tok = strtok_r(buf, ",", &saveptr);
+ tok = strtok_r(buf, delim, &saveptr);
while (tok) {
struct addrinfo hint;
@@ -139,7 +140,7 @@ char *resolve_addrs(const char *orig_str)
}
freeaddrinfo(ores);
- tok = strtok_r(NULL, ",", &saveptr);
+ tok = strtok_r(NULL, delim, &saveptr);
if (tok)
pos = safe_cat(&new_str, &len, pos, ",");