This makes us independent of the allocation
method used inside glfs_realpath.
Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Ira Cooper <ira@samba.org>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Sat Oct 22 00:28:41 CEST 2016 on sn-devel-144
static char *vfs_gluster_realpath(struct vfs_handle_struct *handle,
const char *path)
{
- return glfs_realpath(handle->data, path, 0);
+ char *result = NULL;
+ char *resolved_path = SMB_MALLOC_ARRAY(char, PATH_MAX+1);
+
+ if (resolved_path == NULL) {
+ errno = ENOMEM;
+ return NULL;
+ }
+
+ result = glfs_realpath(handle->data, path, resolved_path);
+ if (result == NULL) {
+ SAFE_FREE(resolved_path);
+ }
+
+ return result;
}
static bool vfs_gluster_lock(struct vfs_handle_struct *handle,