diff options
Diffstat (limited to 'source/modules/vfs_fake_perms.c')
-rw-r--r-- | source/modules/vfs_fake_perms.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/source/modules/vfs_fake_perms.c b/source/modules/vfs_fake_perms.c index 4d10ea5f337..740218dcd41 100644 --- a/source/modules/vfs_fake_perms.c +++ b/source/modules/vfs_fake_perms.c @@ -24,8 +24,6 @@ #include "includes.h" -extern struct current_user current_user; - #undef DBGC_CLASS #define DBGC_CLASS DBGC_VFS @@ -35,6 +33,8 @@ static int fake_perms_stat(vfs_handle_struct *handle, connection_struct *conn, c ret = SMB_VFS_NEXT_STAT(handle, conn, fname, sbuf); if (ret == 0) { + extern struct current_user current_user; + if (S_ISDIR(sbuf->st_mode)) { sbuf->st_mode = S_IFDIR | S_IRWXU; } else { @@ -53,6 +53,8 @@ static int fake_perms_fstat(vfs_handle_struct *handle, files_struct *fsp, int fd ret = SMB_VFS_NEXT_FSTAT(handle, fsp, fd, sbuf); if (ret == 0) { + extern struct current_user current_user; + if (S_ISDIR(sbuf->st_mode)) { sbuf->st_mode = S_IFDIR | S_IRWXU; } else { |