diff options
author | Jeremy Allison <jra@samba.org> | 2011-11-04 10:51:29 -0700 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2011-11-05 01:38:00 +0100 |
commit | 28984858486b9e61142afd3d34ae1e822e0ccef1 (patch) | |
tree | 5f435f130e3a8a8a817b9ce63c8dd2d695875272 /source3/smbd/dir.c | |
parent | 7ff5a5584f7d299be1c46bd881adf3ebc27a2a20 (diff) | |
download | samba-28984858486b9e61142afd3d34ae1e822e0ccef1.tar.gz samba-28984858486b9e61142afd3d34ae1e822e0ccef1.tar.bz2 samba-28984858486b9e61142afd3d34ae1e822e0ccef1.zip |
Move the SEC_DIR_LIST check into dptr_create for SMB2 and now for SMB1.
The pathname check still needs fixing.
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Sat Nov 5 01:38:00 CET 2011 on sn-devel-104
Diffstat (limited to 'source3/smbd/dir.c')
-rw-r--r-- | source3/smbd/dir.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/source3/smbd/dir.c b/source3/smbd/dir.c index 8af0dad8c3..a11c131b49 100644 --- a/source3/smbd/dir.c +++ b/source3/smbd/dir.c @@ -444,6 +444,12 @@ NTSTATUS dptr_create(connection_struct *conn, files_struct *fsp, } if (fsp) { + if (!(fsp->access_mask & SEC_DIR_LIST)) { + DEBUG(5,("dptr_create: directory %s " + "not open for LIST access\n", + path)); + return NT_STATUS_ACCESS_DENIED; + } dir_hnd = OpenDir_fsp(NULL, conn, fsp, wcard, attr); } else { dir_hnd = OpenDir(NULL, conn, path, wcard, attr); |