svn commit: samba r10160 - in trunk/source/rpc_server: .

jra at samba.org jra at samba.org
Mon Sep 12 02:01:56 GMT 2005


Author: jra
Date: 2005-09-12 02:01:56 +0000 (Mon, 12 Sep 2005)
New Revision: 10160

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

Log:
Fix netlogons for Jerry :-). When refactoring auth2 server code
I forgot to set the "authenticated" flag in the dcinfo struct
(this was done at a strange place in the older 3.0 code in my
defense :-).
Jeremy.

Modified:
   trunk/source/rpc_server/srv_netlog_nt.c


Changeset:
Modified: trunk/source/rpc_server/srv_netlog_nt.c
===================================================================
--- trunk/source/rpc_server/srv_netlog_nt.c	2005-09-12 01:34:51 UTC (rev 10159)
+++ trunk/source/rpc_server/srv_netlog_nt.c	2005-09-12 02:01:56 UTC (rev 10160)
@@ -437,6 +437,7 @@
 	init_net_r_auth_2(r_u, &srv_chal_out, &srv_flgs, NT_STATUS_OK);
 
 	server_auth2_negotiated = True;
+	p->dc->authenticated = True;
 	last_dcinfo = *p->dc;
 
 	return r_u->status;
@@ -623,18 +624,19 @@
 	if (!get_valid_user_struct(p->vuid))
 		return NT_STATUS_NO_SUCH_USER;
 
+	if (!p->dc || !p->dc->authenticated) {
+		return NT_STATUS_INVALID_HANDLE;
+	}
 
 	if ( (lp_server_schannel() == True) && (p->auth.auth_type != PIPE_AUTH_TYPE_SCHANNEL) ) {
 		/* 'server schannel = yes' should enforce use of
 		   schannel, the client did offer it in auth2, but
 		   obviously did not use it. */
+		DEBUG(0,("_net_sam_logoff: client %s not using schannel for netlogon\n",
+			p->dc->remote_machine ));
 		return NT_STATUS_ACCESS_DENIED;
 	}
 
-	if (!p->dc || !p->dc->authenticated) {
-		return NT_STATUS_INVALID_HANDLE;
-	}
-
 	/* checks and updates credentials.  creates reply credentials */
 	if (!creds_server_step(p->dc, &q_u->sam_id.client.cred)) {
 		DEBUG(0,("_net_sam_logoff: creds_server_step failed. Rejecting auth "



More information about the samba-cvs mailing list