From ea42eb1f7866fed0e843257ce05e34503fd0129c Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Wed, 17 Oct 2012 17:44:12 -0700 Subject: [PATCH] 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 --- src/include/addr_parsing.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/include/addr_parsing.c b/src/include/addr_parsing.c index bc7dcf3bd86a8..275488df489ee 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, ","); -- 2.39.5