summaryrefslogtreecommitdiff
path: root/source4/librpc
diff options
context:
space:
mode:
authorAndreas Schneider <asn@samba.org>2011-12-22 16:32:31 +0100
committerAndreas Schneider <asn@cryptomilk.org>2011-12-22 17:48:24 +0100
commita7541fc27ec9fd880ce8f13e9c04bec105c5435e (patch)
treeb762ac142be8390c9e02b062189db1db760db2d3 /source4/librpc
parent32317b0529b4322b0c080cc8916f095db0b82cf5 (diff)
downloadsamba-a7541fc27ec9fd880ce8f13e9c04bec105c5435e.tar.gz
samba-a7541fc27ec9fd880ce8f13e9c04bec105c5435e.tar.bz2
samba-a7541fc27ec9fd880ce8f13e9c04bec105c5435e.zip
s4-librpc: Fix netlogon schannel client connect.
As a client we request as much flags as possible. The server checks which flags it supports and returns the same negotiation flags or less. So we need to store the negotiate flags from the server. We need them later if we have to call netr_LogonGetCapabilities.
Diffstat (limited to 'source4/librpc')
-rw-r--r--source4/librpc/rpc/dcerpc_schannel.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/source4/librpc/rpc/dcerpc_schannel.c b/source4/librpc/rpc/dcerpc_schannel.c
index 9501e3e047..335c34ca35 100644
--- a/source4/librpc/rpc/dcerpc_schannel.c
+++ b/source4/librpc/rpc/dcerpc_schannel.c
@@ -245,6 +245,8 @@ static void continue_srv_auth2(struct tevent_req *subreq)
return;
}
+ s->creds->negotiate_flags = s->remote_negotiate_flags;
+
/* verify credentials */
if (!netlogon_creds_client_check(s->creds, s->a.out.return_credentials)) {
composite_error(c, NT_STATUS_UNSUCCESSFUL);