[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