]> err.no Git - linux-2.6/commitdiff
[CIFS] prefixpath mounts to servers supporting posix paths used wrong slash
authorSteve French <sfrench@us.ibm.com>
Thu, 26 Apr 2007 16:42:50 +0000 (16:42 +0000)
committerSteve French <sfrench@us.ibm.com>
Thu, 26 Apr 2007 16:42:50 +0000 (16:42 +0000)
Acked-by: Alexander Bokovoy <abokovoy@ru.ibm.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
fs/cifs/connect.c

index c139fbd24be9a1072c84ac1f5b4a2d297b5b318f..c1af1599568910fd59bb61cab94b8137e160a9a8 100644 (file)
@@ -1662,7 +1662,13 @@ void reset_cifs_unix_caps(int xid, struct cifsTconInfo * tcon,
                                CIFS_SB(sb)->mnt_cifs_flags |= 
                                        CIFS_MOUNT_POSIX_PATHS;
                }
-                       
+       
+               /* We might be setting the path sep back to a different
+               form if we are reconnecting and the server switched its
+               posix path capability for this share */ 
+               if(CIFS_SB(sb)->prepathlen > 0)
+                       CIFS_SB(sb)->prepath[0] = CIFS_DIR_SEP(CIFS_SB(sb));
+       
                cFYI(1,("Negotiate caps 0x%x",(int)cap));
 #ifdef CONFIG_CIFS_DEBUG2
                if(cap & CIFS_UNIX_FCNTL_CAP)