From 0e94e037ac8d7636288ac89d44f0f255e9e8777b Mon Sep 17 00:00:00 2001 From: Vijaikumar M Date: Thu, 13 Mar 2014 13:35:09 +0530 Subject: glusterd/snapshot: Validate path provided for snapshot mount Change-Id: Ia534b02051ada58586318b109f40c5ff77148527 BUG: 1075527 Signed-off-by: Vijaikumar M Reviewed-on: http://review.gluster.org/7239 Reviewed-by: Sachin Pandit Reviewed-by: Raghavendra Bhat Reviewed-by: Rajesh Joseph Tested-by: Rajesh Joseph --- xlators/mgmt/glusterd/src/glusterd-handshake.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'xlators/mgmt') diff --git a/xlators/mgmt/glusterd/src/glusterd-handshake.c b/xlators/mgmt/glusterd/src/glusterd-handshake.c index 2fe0d0ee8..98f2a0d7e 100644 --- a/xlators/mgmt/glusterd/src/glusterd-handshake.c +++ b/xlators/mgmt/glusterd/src/glusterd-handshake.c @@ -78,7 +78,20 @@ build_volfile_path (const char *volname, char *path, /*split string by "/" */ str_token = strtok_r(str_token, "/", &save_ptr); snapname = strtok_r(NULL, "/", &save_ptr); + if (!snapname) { + gf_log(THIS->name, GF_LOG_ERROR, "Invalid path: %s", + volname); + ret = -1; + goto out; + } + snap_volname = strtok_r(NULL, "/", &save_ptr); + if (!snap_volname) { + gf_log(THIS->name, GF_LOG_ERROR, "Invalid path: %s", + volname); + ret = -1; + goto out; + } snap = glusterd_find_snap_by_name (snapname); if (!snap) { -- cgit