aboutsummaryrefslogtreecommitdiffstats
path: root/fs/cifs/readdir.c
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2010-08-05 15:19:56 -0400
committerSteve French <sfrench@us.ibm.com>2010-09-29 15:04:31 -0400
commit1b12b9c15b4371d83b729b8fc18c670e78a1479b (patch)
treef82c9b0d01cdc5e64765780403f460e9e0d8496b /fs/cifs/readdir.c
parent8713d01db8bf948eb9632726f529ec4f821bb025 (diff)
cifs: use Minshall+French symlink functions
If configured, Minshall+French Symlinks are used against all servers. If the server supports UNIX Extensions, we still create Minshall+French Symlinks on write, but on read we fallback to UNIX Extension symlinks. Signed-off-by: Stefan Metzmacher <metze@samba.org> Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs/cifs/readdir.c')
-rw-r--r--fs/cifs/readdir.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/fs/cifs/readdir.c b/fs/cifs/readdir.c
index d5e591fab475..6a8b417babab 100644
--- a/fs/cifs/readdir.c
+++ b/fs/cifs/readdir.c
@@ -738,6 +738,15 @@ static int cifs_filldir(char *pfindEntry, struct file *file, filldir_t filldir,
738 cifs_autodisable_serverino(cifs_sb); 738 cifs_autodisable_serverino(cifs_sb);
739 } 739 }
740 740
741 if ((cifs_sb->mnt_cifs_flags & CIFS_MOUNT_MF_SYMLINKS) &&
742 CIFSCouldBeMFSymlink(&fattr))
743 /*
744 * trying to get the type and mode can be slow,
745 * so just call those regular files for now, and mark
746 * for reval
747 */
748 fattr.cf_flags |= CIFS_FATTR_NEED_REVAL;
749
741 ino = cifs_uniqueid_to_ino_t(fattr.cf_uniqueid); 750 ino = cifs_uniqueid_to_ino_t(fattr.cf_uniqueid);
742 tmp_dentry = cifs_readdir_lookup(file->f_dentry, &qstring, &fattr); 751 tmp_dentry = cifs_readdir_lookup(file->f_dentry, &qstring, &fattr);
743 752