diff --git a/source3/smbd/globals.c b/source3/smbd/globals.c index 8e6f46f..1040cf2 100644 --- a/source3/smbd/globals.c +++ b/source3/smbd/globals.c @@ -89,7 +89,6 @@ int conn_ctx_stack_ndx = 0; struct vfs_init_function_entry *backends = NULL; char *sparse_buf = NULL; -char *LastDir = NULL; /* Current number of oplocks we have outstanding. */ int32_t exclusive_oplocks_open = 0; diff --git a/source3/smbd/globals.h b/source3/smbd/globals.h index 58e03a5..00b9ac8 100644 --- a/source3/smbd/globals.h +++ b/source3/smbd/globals.h @@ -107,7 +107,6 @@ extern int conn_ctx_stack_ndx; struct vfs_init_function_entry; extern struct vfs_init_function_entry *backends; extern char *sparse_buf; -extern char *LastDir; /* Current number of oplocks we have outstanding. */ extern int32_t exclusive_oplocks_open; diff --git a/source3/smbd/vfs.c b/source3/smbd/vfs.c index bdcb8e4..de7aed0 100644 --- a/source3/smbd/vfs.c +++ b/source3/smbd/vfs.c @@ -765,26 +765,9 @@ const char *vfs_readdirname(connection_struct *conn, void *p, int vfs_ChDir(connection_struct *conn, const char *path) { - int res; - - if (!LastDir) { - LastDir = SMB_STRDUP(""); - } - - if (strcsequal(path,".")) - return(0); - - if (*path == '/' && strcsequal(LastDir,path)) - return(0); - DEBUG(4,("vfs_ChDir to %s\n",path)); - res = SMB_VFS_CHDIR(conn,path); - if (!res) { - SAFE_FREE(LastDir); - LastDir = SMB_STRDUP(path); - } - return(res); + return SMB_VFS_CHDIR(conn,path); } /*******************************************************************