[CIFS] make sure that DFS pathnames are properly formed
authorSteve French <sfrench@us.ibm.com>
Thu, 18 Dec 2008 01:41:20 +0000 (01:41 +0000)
committerSteve French <sfrench@us.ibm.com>
Fri, 26 Dec 2008 02:29:13 +0000 (02:29 +0000)
The paths in a DFS request are supposed to only have a single preceding
backslash, but we are sending them with a double backslash. This is
exposing a bug in Windows where it also sends a path in the response
that has a double backslash.

The existing code that builds the mount option string however expects a
double backslash prefix in a couple of places when it tries to use the
path returned by build_path_from_dentry. Fix compose_mount_options to
expect properly formed DFS paths (single backslash at front).

Also clean up error handling in that function. There was a possible
NULL pointer dereference and situations where a partially built option
string would be returned.

Tested against Samba 3.0.28-ish server and Samba 3.3 and Win2k8.

CC: Stable <stable@kernel.org>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>

No differences found