rpms/kernel/FC-6 linux-2.6-cifs-samba-4176.patch, NONE, 1.1 kernel-2.6.spec, 1.2854, 1.2855

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Mon Nov 20 20:30:12 UTC 2006


Author: davej

Update of /cvs/dist/rpms/kernel/FC-6
In directory cvs.devel.redhat.com:/tmp/cvs-serv19598

Modified Files:
	kernel-2.6.spec 
Added Files:
	linux-2.6-cifs-samba-4176.patch 
Log Message:
Fix CIFS mount failure when domain not specified (#211753)

linux-2.6-cifs-samba-4176.patch:
 sess.c |   23 +++++++++++++----------
 1 files changed, 13 insertions(+), 10 deletions(-)

--- NEW FILE linux-2.6-cifs-samba-4176.patch ---
commit 6e659c63998881e8f4a842edbe86ac8c5cdaee41
Author: Steve French <sfrench at us.ibm.com>
Date:   Wed Nov 8 23:10:46 2006 +0000

    [CIFS]  Fix mount failure when domain not specified
    
        Fixes Samba bugzilla #4176
    
        When users do not specify their domain on mount, 2.6.18 started sending
        default domain instead of a null domain (which was the only way on some
        servers to use a default domain).  Users of 2.6.18 who did not specify
        their domain name on mounts to certain common Windows servers that were
        members of a domain, but not the domain controller, would get mount
        failures which they did not get in 2.6.18
    
        This fixes that issue and should remove complaints about mount
        behavior changing.
    
    Signed-off-by: Steve French <sfrench at us.ibm.com>

diff --git a/fs/cifs/sess.c b/fs/cifs/sess.c
index a8a0835..bbdda99 100644
--- a/fs/cifs/sess.c
+++ b/fs/cifs/sess.c
@@ -90,7 +90,9 @@ static void unicode_ssetup_strings(char 
 	} */
 	/* copy user */
 	if(ses->userName == NULL) {
-		/* BB what about null user mounts - check that we do this BB */
+		/* null user mount */
+		*bcc_ptr = 0;
+		*(bcc_ptr+1) = 0;
 	} else { /* 300 should be long enough for any conceivable user name */
 		bytes_ret = cifs_strtoUCS((__le16 *) bcc_ptr, ses->userName,
 					  300, nls_cp);
@@ -98,10 +100,13 @@ static void unicode_ssetup_strings(char 
 	bcc_ptr += 2 * bytes_ret;
 	bcc_ptr += 2; /* account for null termination */
 	/* copy domain */
-	if(ses->domainName == NULL)
-		bytes_ret = cifs_strtoUCS((__le16 *) bcc_ptr,
-					  "CIFS_LINUX_DOM", 32, nls_cp);
-	else
+	if(ses->domainName == NULL) {
+		/* Sending null domain better than using a bogus domain name (as
+		we did briefly in 2.6.18) since server will use its default */
+		*bcc_ptr = 0;
+		*(bcc_ptr+1) = 0;
+		bytes_ret = 0;
+	} else
 		bytes_ret = cifs_strtoUCS((__le16 *) bcc_ptr, ses->domainName, 
 					  256, nls_cp);
 	bcc_ptr += 2 * bytes_ret;
@@ -144,13 +149,11 @@ static void ascii_ssetup_strings(char **
 
         /* copy domain */
 	
-        if(ses->domainName == NULL) {
-                strcpy(bcc_ptr, "CIFS_LINUX_DOM");
-		bcc_ptr += 14;  /* strlen(CIFS_LINUX_DOM) */
- 	} else {
+        if(ses->domainName != NULL) {
                 strncpy(bcc_ptr, ses->domainName, 256); 
 		bcc_ptr += strnlen(ses->domainName, 256);
-	}
+	} /* else we will send a null domain name 
+	     so the server will default to its own domain */
 	*bcc_ptr = 0;
 	bcc_ptr++;
 


Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/dist/rpms/kernel/FC-6/kernel-2.6.spec,v
retrieving revision 1.2854
retrieving revision 1.2855
diff -u -r1.2854 -r1.2855
--- kernel-2.6.spec	20 Nov 2006 20:12:16 -0000	1.2854
+++ kernel-2.6.spec	20 Nov 2006 20:30:05 -0000	1.2855
@@ -468,6 +468,7 @@
 
 Patch1460: linux-2.6-cifs-einval-on-readdir-fix.patch
 Patch1461: linux-2.6-cifs_getattr-preferred-iosize.patch
+Patch1462: linux-2.6-cifs-samba-4176.patch
 
 # Device mapper / MD layer
 Patch1500: linux-2.6-dm-mirroring.patch
@@ -1087,6 +1088,7 @@
 # Fix CIFS
 %patch1460 -p1
 %patch1461 -p1
+%patch1462 -p1
 
 # Device mapper / MD layer
 # dm mirroring
@@ -2068,6 +2070,7 @@
 %changelog
 * Mon Nov 20 2006 Dave Jones <davej at redhat.com>
 - 2.6.18.3
+- Fix CIFS mount failure when domain not specified (#211753)
 
 * Thu Nov 16 2006 Dave Jones <davej at redhat.com>
 - Fix up error handling in HFS. (MOKB-14-11-2006)




More information about the fedora-cvs-commits mailing list