[SCM] Samba Shared Repository - branch v3-2-test updated - initial-v3-2-test-1879-g27e0b6a

Günther Deschner gd at samba.org
Tue Feb 5 09:04:21 GMT 2008


The branch, v3-2-test has been updated
       via  27e0b6a1aa94294588b2c18ed7929edb0289e746 (commit)
       via  390597c96c6ee6da249ea61eea574d434c168fbe (commit)
       via  98d8482bae0c9500ab4a1f6c07acd327b894af66 (commit)
      from  99d80ada6d72bea427cece3e759206eb067bc206 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-2-test


- Log -----------------------------------------------------------------
commit 27e0b6a1aa94294588b2c18ed7929edb0289e746
Author: Günther Deschner <gd at samba.org>
Date:   Mon Feb 4 23:44:11 2008 +0100

    Remove unused marshalling for SAMR_ADD_ALIASMEM.
    
    Guenther

commit 390597c96c6ee6da249ea61eea574d434c168fbe
Author: Günther Deschner <gd at samba.org>
Date:   Mon Feb 4 23:42:05 2008 +0100

    Use rpccli_samr_AddAliasMember() in net.
    
    Guenther

commit 98d8482bae0c9500ab4a1f6c07acd327b894af66
Author: Günther Deschner <gd at samba.org>
Date:   Mon Feb 4 23:40:19 2008 +0100

    Use pidl for _samr_AddAliasMember().
    
    Guenther

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

Summary of changes:
 source/include/rpc_samr.h       |   18 ------------
 source/rpc_client/cli_samr.c    |   31 --------------------
 source/rpc_parse/parse_samr.c   |   59 ---------------------------------------
 source/rpc_server/srv_samr.c    |   23 +--------------
 source/rpc_server/srv_samr_nt.c |   34 ++++++++--------------
 source/utils/net_rpc.c          |    4 ++-
 6 files changed, 17 insertions(+), 152 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/include/rpc_samr.h b/source/include/rpc_samr.h
index 4cee736..57c7831 100644
--- a/source/include/rpc_samr.h
+++ b/source/include/rpc_samr.h
@@ -1407,24 +1407,6 @@ typedef struct r_samr_query_aliasmem_info
 } SAMR_R_QUERY_ALIASMEM;
 
 
-/* SAMR_Q_ADD_ALIASMEM - add alias member */
-typedef struct q_samr_add_alias_mem_info
-{
-	POLICY_HND alias_pol;       /* policy handle */
-
-	DOM_SID2 sid; /* member sid to be added to the alias */
-
-} SAMR_Q_ADD_ALIASMEM;
-
-
-/* SAMR_R_ADD_ALIASMEM - add alias member */
-typedef struct r_samr_add_alias_mem_info
-{
-	NTSTATUS status;         /* return status */
-
-} SAMR_R_ADD_ALIASMEM;
-
-
 /* SAMR_ENC_PASSWD */
 typedef struct enc_passwd_info
 {
diff --git a/source/rpc_client/cli_samr.c b/source/rpc_client/cli_samr.c
index a1824a4..4f29397 100644
--- a/source/rpc_client/cli_samr.c
+++ b/source/rpc_client/cli_samr.c
@@ -574,37 +574,6 @@ NTSTATUS rpccli_samr_query_aliasmem(struct rpc_pipe_client *cli,
 	return result;
 }
 
-/* Add an alias member */
-
-NTSTATUS rpccli_samr_add_aliasmem(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, 
-			       POLICY_HND *alias_pol, DOM_SID *member)
-{
-	prs_struct qbuf, rbuf;
-	SAMR_Q_ADD_ALIASMEM q;
-	SAMR_R_ADD_ALIASMEM r;
-	NTSTATUS result;
-
-	DEBUG(10,("cli_samr_add_aliasmem"));
-
-	ZERO_STRUCT(q);
-	ZERO_STRUCT(r);
-
-	/* Marshall data and send request */
-
-	init_samr_q_add_aliasmem(&q, alias_pol, member);
-
-	CLI_DO_RPC(cli, mem_ctx, PI_SAMR, SAMR_ADD_ALIASMEM,
-		q, r,
-		qbuf, rbuf,
-		samr_io_q_add_aliasmem,
-		samr_io_r_add_aliasmem,
-		NT_STATUS_UNSUCCESSFUL); 
-
-	result = r.status;
-
-	return result;
-}
-
 /* Query alias info */
 
 NTSTATUS rpccli_samr_query_alias_info(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx,
diff --git a/source/rpc_parse/parse_samr.c b/source/rpc_parse/parse_samr.c
index aafb49e..fb3994a 100644
--- a/source/rpc_parse/parse_samr.c
+++ b/source/rpc_parse/parse_samr.c
@@ -3599,65 +3599,6 @@ bool samr_io_r_lookup_rids(const char *desc, SAMR_R_LOOKUP_RIDS * r_u,
 }
 
 /*******************************************************************
-inits a SAMR_Q_ADD_ALIASMEM structure.
-********************************************************************/
-
-void init_samr_q_add_aliasmem(SAMR_Q_ADD_ALIASMEM * q_u, POLICY_HND *hnd,
-			      DOM_SID *sid)
-{
-	DEBUG(5, ("init_samr_q_add_aliasmem\n"));
-
-	q_u->alias_pol = *hnd;
-	init_dom_sid2(&q_u->sid, sid);
-}
-
-/*******************************************************************
-reads or writes a structure.
-********************************************************************/
-
-bool samr_io_q_add_aliasmem(const char *desc, SAMR_Q_ADD_ALIASMEM * q_u,
-			    prs_struct *ps, int depth)
-{
-	if (q_u == NULL)
-		return False;
-
-	prs_debug(ps, depth, desc, "samr_io_q_add_aliasmem");
-	depth++;
-
-	if(!prs_align(ps))
-		return False;
-
-	if(!smb_io_pol_hnd("alias_pol", &q_u->alias_pol, ps, depth))
-		return False;
-	if(!smb_io_dom_sid2("sid      ", &q_u->sid, ps, depth))
-		return False;
-
-	return True;
-}
-
-/*******************************************************************
-reads or writes a structure.
-********************************************************************/
-
-bool samr_io_r_add_aliasmem(const char *desc, SAMR_R_ADD_ALIASMEM * r_u,
-			    prs_struct *ps, int depth)
-{
-	if (r_u == NULL)
-		return False;
-
-	prs_debug(ps, depth, desc, "samr_io_r_add_aliasmem");
-	depth++;
-
-	if(!prs_align(ps))
-		return False;
-
-	if(!prs_ntstatus("status", ps, depth, &r_u->status))
-		return False;
-
-	return True;
-}
-
-/*******************************************************************
 inits a SAMR_Q_QUERY_ALIASMEM structure.
 ********************************************************************/
 
diff --git a/source/rpc_server/srv_samr.c b/source/rpc_server/srv_samr.c
index 84bcff6..fc5edcc 100644
--- a/source/rpc_server/srv_samr.c
+++ b/source/rpc_server/srv_samr.c
@@ -729,28 +729,7 @@ static bool api_samr_query_groupmem(pipes_struct *p)
 
 static bool api_samr_add_aliasmem(pipes_struct *p)
 {
-	SAMR_Q_ADD_ALIASMEM q_u;
-	SAMR_R_ADD_ALIASMEM r_u;
-
-	prs_struct *data = &p->in_data.data;
-	prs_struct *rdata = &p->out_data.rdata;
-
-	ZERO_STRUCT(q_u);
-	ZERO_STRUCT(r_u);
-
-	if (!samr_io_q_add_aliasmem("", &q_u, data, 0)) {
-		DEBUG(0,("api_samr_add_aliasmem: unable to unmarshall SAMR_Q_ADD_ALIASMEM.\n"));
-		return False;
-	}
-
-	r_u.status = _samr_add_aliasmem(p, &q_u, &r_u);
-
-	if (!samr_io_r_add_aliasmem("", &r_u, rdata, 0)) {
-		DEBUG(0,("api_samr_add_aliasmem: unable to marshall SAMR_R_ADD_ALIASMEM.\n"));
-		return False;
-	}
-
-	return True;
+	return proxy_samr_call(p, NDR_SAMR_ADDALIASMEMBER);
 }
 
 /*******************************************************************
diff --git a/source/rpc_server/srv_samr_nt.c b/source/rpc_server/srv_samr_nt.c
index e748d67..c62fc78 100644
--- a/source/rpc_server/srv_samr_nt.c
+++ b/source/rpc_server/srv_samr_nt.c
@@ -3961,26 +3961,28 @@ NTSTATUS _samr_query_groupmem(pipes_struct *p, SAMR_Q_QUERY_GROUPMEM *q_u, SAMR_
 }
 
 /*********************************************************************
- _samr_add_aliasmem
+ _samr_AddAliasMember
 *********************************************************************/
 
-NTSTATUS _samr_add_aliasmem(pipes_struct *p, SAMR_Q_ADD_ALIASMEM *q_u, SAMR_R_ADD_ALIASMEM *r_u)
+NTSTATUS _samr_AddAliasMember(pipes_struct *p,
+			      struct samr_AddAliasMember *r)
 {
 	DOM_SID alias_sid;
 	uint32 acc_granted;
 	SE_PRIV se_rights;
 	bool can_add_accounts;
-	NTSTATUS ret;
+	NTSTATUS status;
 	DISP_INFO *disp_info = NULL;
 
 	/* Find the policy handle. Open a policy on it. */
-	if (!get_lsa_policy_samr_sid(p, &q_u->alias_pol, &alias_sid, &acc_granted, &disp_info)) 
+	if (!get_lsa_policy_samr_sid(p, r->in.alias_handle, &alias_sid, &acc_granted, &disp_info))
 		return NT_STATUS_INVALID_HANDLE;
-	
-	if (!NT_STATUS_IS_OK(r_u->status = access_check_samr_function(acc_granted, SA_RIGHT_ALIAS_ADD_MEMBER, "_samr_add_aliasmem"))) {
-		return r_u->status;
+
+	status = access_check_samr_function(acc_granted, SA_RIGHT_ALIAS_ADD_MEMBER, "_samr_AddAliasMember");
+	if (!NT_STATUS_IS_OK(status)) {
+		return status;
 	}
-		
+
 	DEBUG(10, ("sid is %s\n", sid_string_dbg(&alias_sid)));
 	
 	se_priv_copy( &se_rights, &se_add_users );
@@ -3991,18 +3993,18 @@ NTSTATUS _samr_add_aliasmem(pipes_struct *p, SAMR_Q_ADD_ALIASMEM *q_u, SAMR_R_AD
 	if ( can_add_accounts )
 		become_root();
 	
-	ret = pdb_add_aliasmem(&alias_sid, &q_u->sid.sid);
+	status = pdb_add_aliasmem(&alias_sid, r->in.sid);
 	
 	if ( can_add_accounts )
 		unbecome_root();
 		
 	/******** END SeAddUsers BLOCK *********/
 	
-	if (NT_STATUS_IS_OK(ret)) {
+	if (NT_STATUS_IS_OK(status)) {
 		force_flush_samr_cache(disp_info);
 	}
 
-	return ret;
+	return status;
 }
 
 /*********************************************************************
@@ -5248,16 +5250,6 @@ NTSTATUS _samr_SetAliasInfo(pipes_struct *p,
 /****************************************************************
 ****************************************************************/
 
-NTSTATUS _samr_AddAliasMember(pipes_struct *p,
-			      struct samr_AddAliasMember *r)
-{
-	p->rng_fault_state = true;
-	return NT_STATUS_NOT_IMPLEMENTED;
-}
-
-/****************************************************************
-****************************************************************/
-
 NTSTATUS _samr_GetMembersInAlias(pipes_struct *p,
 				 struct samr_GetMembersInAlias *r)
 {
diff --git a/source/utils/net_rpc.c b/source/utils/net_rpc.c
index fc62024..4329005 100644
--- a/source/utils/net_rpc.c
+++ b/source/utils/net_rpc.c
@@ -2301,7 +2301,9 @@ static NTSTATUS rpc_add_aliasmem(struct rpc_pipe_client *pipe_hnd,
 		return result;
 	}
 
-	result = rpccli_samr_add_aliasmem(pipe_hnd, mem_ctx, &alias_pol, &member_sid);
+	result = rpccli_samr_AddAliasMember(pipe_hnd, mem_ctx,
+					    &alias_pol,
+					    &member_sid);
 
 	if (!NT_STATUS_IS_OK(result)) {
 		return result;


-- 
Samba Shared Repository


More information about the samba-cvs mailing list