Signed-off-by: Stefan Metzmacher <[email protected]>
---
 fs/cifs/cifsproto.h |    3 +++
 fs/cifs/inode.c     |    7 +++++++
 fs/cifs/link.c      |    8 ++++++++
 3 files changed, 18 insertions(+), 0 deletions(-)

diff --git a/fs/cifs/cifsproto.h b/fs/cifs/cifsproto.h
index 2eaebbd..e94e095 100644
--- a/fs/cifs/cifsproto.h
+++ b/fs/cifs/cifsproto.h
@@ -409,4 +409,7 @@ extern int CIFSSMBSetPosixACL(const int xid, struct 
cifsTconInfo *tcon,
 extern int CIFSGetExtAttr(const int xid, struct cifsTconInfo *tcon,
                        const int netfid, __u64 *pExtAttrBits, __u64 *pMask);
 extern void cifs_autodisable_serverino(struct cifs_sb_info *cifs_sb);
+extern int CIFSCheckMFSymlink(struct cifs_fattr *fattr,
+               const unsigned char *path,
+               struct cifs_sb_info *cifs_sb, int xid);
 #endif                 /* _CIFSPROTO_H */
diff --git a/fs/cifs/inode.c b/fs/cifs/inode.c
index a15b3a9..c4121de 100644
--- a/fs/cifs/inode.c
+++ b/fs/cifs/inode.c
@@ -661,6 +661,13 @@ int cifs_get_inode_info(struct inode **pinode,
        if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_UNX_EMUL)
                cifs_sfu_mode(&fattr, full_path, cifs_sb, xid);
 
+       /* query for SFU type info if supported and needed */
+       if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_MF_SYMLINKS) {
+               tmprc = CIFSCheckMFSymlink(&fattr, full_path, cifs_sb, xid);
+               if (tmprc)
+                       cFYI(1, "CIFSCheckMFSymlink: %d", tmprc);
+       }
+
        if (!*pinode) {
                *pinode = cifs_iget(sb, &fattr);
                if (!*pinode)
diff --git a/fs/cifs/link.c b/fs/cifs/link.c
index 2358a5f..985373c 100644
--- a/fs/cifs/link.c
+++ b/fs/cifs/link.c
@@ -48,6 +48,14 @@ CIFSQueryMFSymLink(const int xid, struct cifsTconInfo *tcon,
 }
 
 int
+CIFSCheckMFSymlink(struct cifs_fattr *fattr,
+                  const unsigned char *path,
+                  struct cifs_sb_info *cifs_sb, int xid)
+{
+       return 0;
+}
+
+int
 cifs_hardlink(struct dentry *old_file, struct inode *inode,
              struct dentry *direntry)
 {
-- 
1.7.0.4

--
To unsubscribe from this list: send the line "unsubscribe linux-cifs" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to