Check SMB_VFS_NEXT_OPENDIR return in dirsort_opendir().
authorJeremy Allison <jra@samba.org>
Tue, 9 Apr 2013 17:38:24 +0000 (10:38 -0700)
committerJeremy Allison <jra@samba.org>
Thu, 11 Apr 2013 16:49:41 +0000 (09:49 -0700)
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
source3/modules/vfs_dirsort.c

index d6f19b52ecdf0b18733cfb03642802803bcdc89a..e2c61dab179d128e6d73501031c4a4de603e256d 100644 (file)
@@ -114,6 +114,11 @@ static DIR *dirsort_opendir(vfs_handle_struct *handle,
        data->source_directory = SMB_VFS_NEXT_OPENDIR(handle, fname, mask,
                                                      attr);
 
+       if (data->source_directory == NULL) {
+               TALLOC_FREE(data);
+               return NULL;
+       }
+
        data->fd = dirfd(data->source_directory);
 
        if (!open_and_sort_dir(handle, data)) {