Author: sfrench
Date: 2006-08-16 17:29:32 +0000 (Wed, 16 Aug 2006)
New Revision: 71

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=linux-cifs-client&rev=71

Log:
merge with cifs git tree

Modified:
   branches/linux-converged-for-old-kernels/fs/cifs/CHANGES
   branches/linux-converged-for-old-kernels/fs/cifs/cifsencrypt.c
   branches/linux-converged-for-old-kernels/fs/cifs/connect.c
   branches/linux-converged-for-old-kernels/fs/cifs/dir.c


Changeset:
Modified: branches/linux-converged-for-old-kernels/fs/cifs/CHANGES
===================================================================
--- branches/linux-converged-for-old-kernels/fs/cifs/CHANGES    2006-08-16 
16:39:11 UTC (rev 70)
+++ branches/linux-converged-for-old-kernels/fs/cifs/CHANGES    2006-08-16 
17:29:32 UTC (rev 71)
@@ -2,7 +2,10 @@
 ------------
 Do not time out lockw calls when using posix extensions. Do not
 time out requests if server still responding reasonably fast
-on requests on other threads
+on requests on other threads.  Improve POSIX locking emulation,
+(lock cancel now works, and unlock of merged range works even
+to Windows servers now).  Fix oops on mount to lanman servers
+(win9x, os/2 etc.) when null password.
 
 Version 1.44
 ------------

Modified: branches/linux-converged-for-old-kernels/fs/cifs/cifsencrypt.c
===================================================================
--- branches/linux-converged-for-old-kernels/fs/cifs/cifsencrypt.c      
2006-08-16 16:39:11 UTC (rev 70)
+++ branches/linux-converged-for-old-kernels/fs/cifs/cifsencrypt.c      
2006-08-16 17:29:32 UTC (rev 71)
@@ -277,7 +277,8 @@
                return;
 
        memset(password_with_pad, 0, CIFS_ENCPWD_SIZE);
-       strncpy(password_with_pad, ses->password, CIFS_ENCPWD_SIZE);
+       if(ses->password)
+               strncpy(password_with_pad, ses->password, CIFS_ENCPWD_SIZE);
 
        if((ses->server->secMode & SECMODE_PW_ENCRYPT) == 0)
                if(extended_security & CIFSSEC_MAY_PLNTXT) {

Modified: branches/linux-converged-for-old-kernels/fs/cifs/connect.c
===================================================================
--- branches/linux-converged-for-old-kernels/fs/cifs/connect.c  2006-08-16 
16:39:11 UTC (rev 70)
+++ branches/linux-converged-for-old-kernels/fs/cifs/connect.c  2006-08-16 
17:29:32 UTC (rev 71)
@@ -1322,33 +1322,35 @@
 
        read_lock(&GlobalSMBSeslock);
        list_for_each(tmp, &GlobalTreeConnectionList) {
-               cFYI(1, ("Next tcon - "));
+               cFYI(1, ("Next tcon"));
                tcon = list_entry(tmp, struct cifsTconInfo, cifsConnectionList);
                if (tcon->ses) {
                        if (tcon->ses->server) {
                                cFYI(1,
-                                    (" old ip addr: %x == new ip %x ?",
+                                    ("old ip addr: %x == new ip %x ?",
                                      tcon->ses->server->addr.sockAddr.sin_addr.
                                      s_addr, new_target_ip_addr));
                                if (tcon->ses->server->addr.sockAddr.sin_addr.
                                    s_addr == new_target_ip_addr) {
-       /* BB lock tcon and server and tcp session and increment use count 
here? */
+       /* BB lock tcon, server and tcp session and increment use count here? */
                                        /* found a match on the TCP session */
                                        /* BB check if reconnection needed */
-                                       cFYI(1,("Matched ip, old UNC: %s == 
new: %s ?",
+                                       cFYI(1,("IP match, old UNC: %s new: %s",
                                              tcon->treeName, uncName));
                                        if (strncmp
                                            (tcon->treeName, uncName,
                                             MAX_TREE_SIZE) == 0) {
                                                cFYI(1,
-                                                    ("Matched UNC, old user: 
%s == new: %s ?",
+                                                    ("and old usr: %s new: %s",
                                                      tcon->treeName, uncName));
                                                if (strncmp
                                                    (tcon->ses->userName,
                                                     userName,
                                                     MAX_USERNAME_SIZE) == 0) {
                                                        
read_unlock(&GlobalSMBSeslock);
-                                                       return tcon;/* also 
matched user (smb session)*/
+                                                       /* matched smb session
+                                                       (user name */
+                                                       return tcon;
                                                }
                                        }
                                }

Modified: branches/linux-converged-for-old-kernels/fs/cifs/dir.c
===================================================================
--- branches/linux-converged-for-old-kernels/fs/cifs/dir.c      2006-08-16 
16:39:11 UTC (rev 70)
+++ branches/linux-converged-for-old-kernels/fs/cifs/dir.c      2006-08-16 
17:29:32 UTC (rev 71)
@@ -286,6 +286,10 @@
                        pCifsFile->invalidHandle = FALSE;
                        pCifsFile->closePend     = FALSE;
                        init_MUTEX(&pCifsFile->fh_sem);
+                       init_MUTEX(&pCifsFile->lock_sem);
+                       INIT_LIST_HEAD(&pCifsFile->llist);
+                       atomic_set(&pCifsFile->wrtPending,0);
+
                        /* set the following in open now 
                                pCifsFile->pfile = file; */
                        write_lock(&GlobalSMBSeslock);

Reply via email to