r6219: This change allows us to fall back to authenticating without
authorRichard Sharpe <sharpe@samba.org>
Tue, 5 Apr 2005 19:53:07 +0000 (19:53 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:11:27 +0000 (13:11 -0500)
DCERPC_SCHANNEL_128 if we fail. Thus, it allows us to work with Windows
NT DCs ...
(This used to be commit 3034b226705c4736d57c9bf4e9470c4d44c72e8e)

source4/librpc/rpc/dcerpc_schannel.c
source4/ntvfs/posix/pvfs_search.c

index 3ae2624ff9df208b407b138cc76b027c1406f1a5..a98ed50b9a457bd3ca88cb296f7fbf860a4f2ea3 100644 (file)
@@ -162,7 +162,21 @@ NTSTATUS dcerpc_bind_auth_schannel(TALLOC_CTX *tmp_ctx,
                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, 
index 69ca6ef997018e6095dc1fe3b148be57e65f1690..965e9ac266c766fecfbedad6c684dffbd2a0a67f 100644 (file)
@@ -266,7 +266,7 @@ static NTSTATUS pvfs_search_fill(struct pvfs_state *pvfs, TALLOC_CTX *mem_ctx,
                talloc_free(file);
        }
 
-       pvfs_list_hibernate(dir);
+       /*pvfs_list_hibernate(dir);*/
 
        return NT_STATUS_OK;
 }