[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha8-1337-g9317711

Günther Deschner gd at samba.org
Wed Sep 2 02:24:27 MDT 2009


The branch, master has been updated
       via  931771138a52a3385afb2d3966509a57def3ece5 (commit)
      from  9f031352c6e9439922284fc853611964b33ea4af (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 931771138a52a3385afb2d3966509a57def3ece5
Author: Günther Deschner <gd at samba.org>
Date:   Mon Aug 31 17:13:05 2009 +0200

    s3-netlogon: implement _netr_LogonSamLogonWithFlags().
    
    Guenther

-----------------------------------------------------------------------

Summary of changes:
 source3/rpc_server/srv_netlog_nt.c |   58 ++++++++++++++++++++++++-----------
 1 files changed, 40 insertions(+), 18 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/rpc_server/srv_netlog_nt.c b/source3/rpc_server/srv_netlog_nt.c
index 9a3c8c2..3daf45b 100644
--- a/source3/rpc_server/srv_netlog_nt.c
+++ b/source3/rpc_server/srv_netlog_nt.c
@@ -807,6 +807,10 @@ static NTSTATUS _netr_LogonSamLogon_base(pipes_struct *p,
 			process_creds = true;
 			fn = "_netr_LogonSamLogon";
 			break;
+		case NDR_NETR_LOGONSAMLOGONWITHFLAGS:
+			process_creds = true;
+			fn = "_netr_LogonSamLogonWithFlags";
+			break;
 		case NDR_NETR_LOGONSAMLOGONEX:
 			process_creds = false;
 			fn = "_netr_LogonSamLogonEx";
@@ -993,18 +997,17 @@ static NTSTATUS _netr_LogonSamLogon_base(pipes_struct *p,
 	return status;
 }
 
-/*************************************************************************
- _netr_LogonSamLogon
- *************************************************************************/
+/****************************************************************
+ _netr_LogonSamLogonWithFlags
+****************************************************************/
 
-NTSTATUS _netr_LogonSamLogon(pipes_struct *p,
-			     struct netr_LogonSamLogon *r)
+NTSTATUS _netr_LogonSamLogonWithFlags(pipes_struct *p,
+				      struct netr_LogonSamLogonWithFlags *r)
 {
 	NTSTATUS status;
 	struct netlogon_creds_CredentialState *creds;
 	struct netr_LogonSamLogonEx r2;
 	struct netr_Authenticator return_authenticator;
-	uint32_t flags = 0;
 
 	become_root();
 	status = netr_creds_server_step_check(p, p->mem_ctx,
@@ -1022,10 +1025,10 @@ NTSTATUS _netr_LogonSamLogon(pipes_struct *p,
 	r2.in.logon_level	= r->in.logon_level;
 	r2.in.logon		= r->in.logon;
 	r2.in.validation_level	= r->in.validation_level;
-	r2.in.flags		= &flags;
+	r2.in.flags		= r->in.flags;
 	r2.out.validation	= r->out.validation;
 	r2.out.authoritative	= r->out.authoritative;
-	r2.out.flags		= &flags;
+	r2.out.flags		= r->out.flags;
 
 	status = _netr_LogonSamLogon_base(p, &r2, creds);
 
@@ -1035,6 +1038,35 @@ NTSTATUS _netr_LogonSamLogon(pipes_struct *p,
 }
 
 /*************************************************************************
+ _netr_LogonSamLogon
+ *************************************************************************/
+
+NTSTATUS _netr_LogonSamLogon(pipes_struct *p,
+			     struct netr_LogonSamLogon *r)
+{
+	NTSTATUS status;
+	struct netr_LogonSamLogonWithFlags r2;
+	uint32_t flags = 0;
+
+	r2.in.server_name		= r->in.server_name;
+	r2.in.computer_name		= r->in.computer_name;
+	r2.in.credential		= r->in.credential;
+	r2.in.logon_level		= r->in.logon_level;
+	r2.in.logon			= r->in.logon;
+	r2.in.validation_level		= r->in.validation_level;
+	r2.in.return_authenticator	= r->in.return_authenticator;
+	r2.in.flags			= &flags;
+	r2.out.validation		= r->out.validation;
+	r2.out.authoritative		= r->out.authoritative;
+	r2.out.flags			= &flags;
+	r2.out.return_authenticator	= r->out.return_authenticator;
+
+	status = _netr_LogonSamLogonWithFlags(p, &r2);
+
+	return status;
+}
+
+/*************************************************************************
  _netr_LogonSamLogonEx
  - no credential chaining. Map into net sam logon.
  *************************************************************************/
@@ -1417,16 +1449,6 @@ WERROR _netr_GetForestTrustInformation(pipes_struct *p,
 /****************************************************************
 ****************************************************************/
 
-NTSTATUS _netr_LogonSamLogonWithFlags(pipes_struct *p,
-				      struct netr_LogonSamLogonWithFlags *r)
-{
-	p->rng_fault_state = true;
-	return NT_STATUS_NOT_IMPLEMENTED;
-}
-
-/****************************************************************
-****************************************************************/
-
 NTSTATUS _netr_ServerGetTrustInfo(pipes_struct *p,
 				  struct netr_ServerGetTrustInfo *r)
 {


-- 
Samba Shared Repository


More information about the samba-cvs mailing list