summaryrefslogtreecommitdiff
path: root/fs/cifs/smb1ops.c
diff options
context:
space:
mode:
authorShirish Pargaonkar <shirishpargaonkar@gmail.com>2012-09-28 17:21:14 (GMT)
committerSteve French <smfrench@gmail.com>2012-09-28 20:32:28 (GMT)
commitc052e2b423f3eabe9f3f32e60744afa5cf26f6b9 (patch)
tree03530fe0622d19a7d4e8d80e4e17e7681e95dc42 /fs/cifs/smb1ops.c
parentf065fd099fc475333fc7a55677a7f64764445d55 (diff)
downloadlinux-c052e2b423f3eabe9f3f32e60744afa5cf26f6b9.tar.xz
cifs: obtain file access during backup intent lookup (resend)
Rebased and resending the patch. Path based queries can fail for lack of access, especially during lookup during open. open itself would actually succeed becasue of back up intent bit but queries (either path or file handle based) do not have a means to specifiy backup intent bit. So query the file info during lookup using trans2 / findfirst / file_id_full_dir_info to obtain file info as well as file_id/inode value. Signed-off-by: Shirish Pargaonkar <shirishpargaonkar@gmail.com> Acked-by: Jeff Layton <jlayton@samba.org> Signed-off-by: Steve French <smfrench@gmail.com>
Diffstat (limited to 'fs/cifs/smb1ops.c')
-rw-r--r--fs/cifs/smb1ops.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/fs/cifs/smb1ops.c b/fs/cifs/smb1ops.c
index 42dccbb..56cc4be 100644
--- a/fs/cifs/smb1ops.c
+++ b/fs/cifs/smb1ops.c
@@ -837,10 +837,8 @@ cifs_query_dir_first(const unsigned int xid, struct cifs_tcon *tcon,
struct cifs_fid *fid, __u16 search_flags,
struct cifs_search_info *srch_inf)
{
- return CIFSFindFirst(xid, tcon, path, cifs_sb->local_nls,
- &fid->netfid, search_flags, srch_inf,
- cifs_sb->mnt_cifs_flags &
- CIFS_MOUNT_MAP_SPECIAL_CHR, CIFS_DIR_SEP(cifs_sb));
+ return CIFSFindFirst(xid, tcon, path, cifs_sb,
+ &fid->netfid, search_flags, srch_inf, true);
}
static int