Author: sharpe
Date: 2005-04-05 19:53:07 +0000 (Tue, 05 Apr 2005)
New Revision: 6219

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

Log:

This change allows us to fall back to authenticating without 
DCERPC_SCHANNEL_128 if we fail. Thus, it allows us to work with Windows
NT DCs ...


Modified:
   branches/SAMBA_4_0/source/librpc/rpc/dcerpc_schannel.c
   branches/SAMBA_4_0/source/ntvfs/posix/pvfs_search.c


Changeset:
Modified: branches/SAMBA_4_0/source/librpc/rpc/dcerpc_schannel.c
===================================================================
--- branches/SAMBA_4_0/source/librpc/rpc/dcerpc_schannel.c      2005-04-05 
17:49:16 UTC (rev 6218)
+++ branches/SAMBA_4_0/source/librpc/rpc/dcerpc_schannel.c      2005-04-05 
19:53:07 UTC (rev 6219)
@@ -162,7 +162,21 @@
                DEBUG(1, ("Failed to setup credentials for account %s: %s\n",
                          cli_credentials_get_username(credentials), 
                          nt_errstr(status)));
-               return status;
+               /*
+                * If we get back NT_STATUS_ACCESS_DENIED and we asked for
+                * DCERPC_SCHANNEL_128, then try again without
+                */
+               if (NT_STATUS_EQUAL(status, NT_STATUS_ACCESS_DENIED) &&
+                   p->conn->flags & DCERPC_SCHANNEL_128) {
+                       DEBUG(1, ("Retrying to setup credentials without 
DCERPC_SCHANNEL_128\n"));
+                       p->conn->flags &= ~DCERPC_SCHANNEL_128;
+                       status = dcerpc_schannel_key(tmp_ctx, 
+                                                    p, credentials,
+                                                    chan_type);
+               }
+               if (!NT_STATUS_IS_OK(status)) {
+                       return status;
+               }
        }
 
        return dcerpc_bind_auth_password(p, uuid, version, 

Modified: branches/SAMBA_4_0/source/ntvfs/posix/pvfs_search.c
===================================================================
--- branches/SAMBA_4_0/source/ntvfs/posix/pvfs_search.c 2005-04-05 17:49:16 UTC 
(rev 6218)
+++ branches/SAMBA_4_0/source/ntvfs/posix/pvfs_search.c 2005-04-05 19:53:07 UTC 
(rev 6219)
@@ -266,7 +266,7 @@
                talloc_free(file);
        }
 
-       pvfs_list_hibernate(dir);
+       /*pvfs_list_hibernate(dir);*/
 
        return NT_STATUS_OK;
 }

Reply via email to