Comments
Patch
@@ -230,6 +230,7 @@ nfs_rpcsvc_conn_peer_check_search (dict_t *options, char *pattern, char *clstr)
char *addrtok = NULL;
char *addrstr = NULL;
char *svptr = NULL;
+ char *dupstr = NULL;
if ((!options) || (!clstr))
return -1;
@@ -247,8 +248,14 @@ nfs_rpcsvc_conn_peer_check_search (dict_t *options, char *pattern, char *clstr)
ret = -1;
goto err;
}
+ dupstr = gf_strdup (addrstr);
- addrtok = strtok_r (addrstr, ",", &svptr);
+ if (!dupstr) {
+ ret = -1;
+ goto err;
+ }
+
+ addrtok = strtok_r (dupstr, ",", &svptr);
while (addrtok) {
/* CASEFOLD not present on Solaris */
@@ -265,7 +272,8 @@ nfs_rpcsvc_conn_peer_check_search (dict_t *options, char *pattern, char *clstr)
ret = -1;
err:
-
+ if (dupstr)
+ GF_FREE (dupstr);
return ret;
}
Dup the str from str, so that the comma separated string is not truncated. Signed-off-by: shishir gowda <shishirng@gluster.com> --- xlators/nfs/lib/src/rpcsvc.c | 12 ++++++++++-- 1 files changed, 10 insertions(+), 2 deletions(-)