From 1c382869ba6aff0c159103a8267045c6eb600114 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 2a469f9a9b7bf..f21f637e91f8d 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); @@ -62,7 +63,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; @@ -141,7 +142,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