Author: jerry
Date: 2005-09-27 19:18:20 +0000 (Tue, 27 Sep 2005)
New Revision: 10554

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=10554

Log:
* BUG 3057: assume x64 drivers are v3 drivers
* BUG 3087: allow smbspool to establisha geust connection 
  using a username with no password
 

Modified:
   branches/SAMBA_3_0/source/client/smbspool.c
   branches/SAMBA_3_0/source/printing/nt_printing.c
   trunk/source/client/smbspool.c
   trunk/source/printing/nt_printing.c


Changeset:
Modified: branches/SAMBA_3_0/source/client/smbspool.c
===================================================================
--- branches/SAMBA_3_0/source/client/smbspool.c 2005-09-27 19:01:27 UTC (rev 
10553)
+++ branches/SAMBA_3_0/source/client/smbspool.c 2005-09-27 19:18:20 UTC (rev 
10554)
@@ -457,15 +457,15 @@
 
   get_myname(myname);  
 
-  if ( (username) && ( *username ) && (password) && (*password) ) 
+  /* See if we have a username first.  This is for backwards compatible 
+     behavior with 3.0.14a */
+
+  if ( username &&  *username )
   {
-      /* 
-       * User/password specified in the DEVICE_URI, use those credentials 
-       * to connect to the server 
-       */
       cli = smb_complete_connection(myname, server, port, username, 
                                     password, workgroup, share, 0 );
-      if (cli ) { return cli; }
+      if (cli) 
+        return cli;
   }
   
   /* 

Modified: branches/SAMBA_3_0/source/printing/nt_printing.c
===================================================================
--- branches/SAMBA_3_0/source/printing/nt_printing.c    2005-09-27 19:01:27 UTC 
(rev 10553)
+++ branches/SAMBA_3_0/source/printing/nt_printing.c    2005-09-27 19:18:20 UTC 
(rev 10554)
@@ -1386,12 +1386,19 @@
        *perr = WERR_INVALID_PARAM;
 
        /* If architecture is Windows 95/98/ME, the version is always 0. */
-       if (strcmp(architecture, "WIN40") == 0) {
+       if (strcmp(architecture, SPL_ARCH_WIN40) == 0) {
                DEBUG(10,("get_correct_cversion: Driver is Win9x, cversion = 
0\n"));
                *perr = WERR_OK;
                return 0;
        }
 
+       /* If architecture is Windows x64, the version is always 3. */
+       if (strcmp(architecture, SPL_ARCH_X64) == 0) {
+               DEBUG(10,("get_correct_cversion: Driver is x64, cversion = 
3\n"));
+               *perr = WERR_OK;
+               return 3;
+       }
+
        /*
         * Connect to the print$ share under the same account as the user 
connected
         * to the rpc pipe. Note we must still be root to do this.

Modified: trunk/source/client/smbspool.c
===================================================================
--- trunk/source/client/smbspool.c      2005-09-27 19:01:27 UTC (rev 10553)
+++ trunk/source/client/smbspool.c      2005-09-27 19:18:20 UTC (rev 10554)
@@ -460,15 +460,15 @@
 
   get_myname(myname);  
 
-  if ( (username) && ( *username ) && (password) && (*password) ) 
+  /* See if we have a username first.  This is for backwards compatible 
+     behavior with 3.0.14a */
+
+  if ( username &&  *username )
   {
-      /* 
-       * User/password specified in the DEVICE_URI, use those credentials 
-       * to connect to the server 
-       */
       cli = smb_complete_connection(myname, server, port, username, 
                                     password, workgroup, share, 0 );
-      if (cli ) { return cli; }
+      if (cli) 
+        return cli;
   }
   
   /* 

Modified: trunk/source/printing/nt_printing.c
===================================================================
--- trunk/source/printing/nt_printing.c 2005-09-27 19:01:27 UTC (rev 10553)
+++ trunk/source/printing/nt_printing.c 2005-09-27 19:18:20 UTC (rev 10554)
@@ -1386,12 +1386,19 @@
        *perr = WERR_INVALID_PARAM;
 
        /* If architecture is Windows 95/98/ME, the version is always 0. */
-       if (strcmp(architecture, "WIN40") == 0) {
+       if (strcmp(architecture, SPL_ARCH_WIN40) == 0) {
                DEBUG(10,("get_correct_cversion: Driver is Win9x, cversion = 
0\n"));
                *perr = WERR_OK;
                return 0;
        }
 
+       /* If architecture is Windows x64, the version is always 3. */
+       if (strcmp(architecture, SPL_ARCH_X64) == 0) {
+               DEBUG(10,("get_correct_cversion: Driver is x64, cversion = 
3\n"));
+               *perr = WERR_OK;
+               return 3;
+       }
+
        /*
         * Connect to the print$ share under the same account as the user 
connected
         * to the rpc pipe. Note we must still be root to do this.

Reply via email to