The branch, v3-2-test has been updated
       via  31d5a3aaa42c18319fd751aba65f435348b1e83e (commit)
       via  b8bf051bdda221dda15598e16bb8dbec68bc7df7 (commit)
       via  86827e374469421e2204598712225fb19d4af64b (commit)
      from  e74ad425ff3a139fa12c0320e4a292dcb0991888 (commit)

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


- Log -----------------------------------------------------------------
commit 31d5a3aaa42c18319fd751aba65f435348b1e83e
Author: Günther Deschner <[EMAIL PROTECTED]>
Date:   Fri Feb 1 01:32:18 2008 +0100

    Use pidl for _samr_DeleteDomAlias().
    
    Guenther

commit b8bf051bdda221dda15598e16bb8dbec68bc7df7
Author: Günther Deschner <[EMAIL PROTECTED]>
Date:   Fri Feb 1 01:31:45 2008 +0100

    Use pidl for _samr_DeleteDomainGroup().
    
    Guenther

commit 86827e374469421e2204598712225fb19d4af64b
Author: Günther Deschner <[EMAIL PROTECTED]>
Date:   Fri Feb 1 01:30:50 2008 +0100

    Use pidl for _samr_DeleteUser().
    
    Guenther

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

Summary of changes:
 source/rpc_server/srv_samr.c    |   69 +------------------------
 source/rpc_server/srv_samr_nt.c |  106 +++++++++++++++-----------------------
 2 files changed, 45 insertions(+), 130 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/rpc_server/srv_samr.c b/source/rpc_server/srv_samr.c
index 447865e..4d5f841 100644
--- a/source/rpc_server/srv_samr.c
+++ b/source/rpc_server/srv_samr.c
@@ -1045,28 +1045,7 @@ static bool api_samr_del_groupmem(pipes_struct *p)
 
 static bool api_samr_delete_dom_user(pipes_struct *p)
 {
-       SAMR_Q_DELETE_DOM_USER q_u;
-       SAMR_R_DELETE_DOM_USER 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_delete_dom_user("", &q_u, data, 0)) {
-               DEBUG(0,("api_samr_delete_dom_user: unable to unmarshall 
SAMR_Q_DELETE_DOM_USER.\n"));
-               return False;
-       }
-
-       r_u.status = _samr_delete_dom_user(p, &q_u, &r_u);
-
-       if (!samr_io_r_delete_dom_user("", &r_u, rdata, 0)) {
-               DEBUG(0,("api_samr_delete_dom_user: unable to marshall 
SAMR_R_DELETE_DOM_USER.\n"));
-               return False;
-       }
-
-       return True;
+       return proxy_samr_call(p, NDR_SAMR_DELETEUSER);
 }
 
 /*******************************************************************
@@ -1075,28 +1054,7 @@ static bool api_samr_delete_dom_user(pipes_struct *p)
 
 static bool api_samr_delete_dom_group(pipes_struct *p)
 {
-       SAMR_Q_DELETE_DOM_GROUP q_u;
-       SAMR_R_DELETE_DOM_GROUP 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_delete_dom_group("", &q_u, data, 0)) {
-               DEBUG(0,("api_samr_delete_dom_group: unable to unmarshall 
SAMR_Q_DELETE_DOM_GROUP.\n"));
-               return False;
-       }
-
-       r_u.status = _samr_delete_dom_group(p, &q_u, &r_u);
-
-       if (!samr_io_r_delete_dom_group("", &r_u, rdata, 0)) {
-               DEBUG(0,("api_samr_delete_dom_group: unable to marshall 
SAMR_R_DELETE_DOM_GROUP.\n"));
-               return False;
-       }
-
-       return True;
+       return proxy_samr_call(p, NDR_SAMR_DELETEDOMAINGROUP);
 }
 
 /*******************************************************************
@@ -1105,28 +1063,7 @@ static bool api_samr_delete_dom_group(pipes_struct *p)
 
 static bool api_samr_delete_dom_alias(pipes_struct *p)
 {
-       SAMR_Q_DELETE_DOM_ALIAS q_u;
-       SAMR_R_DELETE_DOM_ALIAS 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_delete_dom_alias("", &q_u, data, 0)) {
-               DEBUG(0,("api_samr_delete_dom_alias: unable to unmarshall 
SAMR_Q_DELETE_DOM_ALIAS.\n"));
-               return False;
-       }
-
-       r_u.status = _samr_delete_dom_alias(p, &q_u, &r_u);
-
-       if (!samr_io_r_delete_dom_alias("", &r_u, rdata, 0)) {
-               DEBUG(0,("api_samr_delete_dom_alias: unable to marshall 
SAMR_R_DELETE_DOM_ALIAS.\n"));
-               return False;
-       }
-
-       return True;
+       return proxy_samr_call(p, NDR_SAMR_DELETEDOMALIAS);
 }
 
 /*******************************************************************
diff --git a/source/rpc_server/srv_samr_nt.c b/source/rpc_server/srv_samr_nt.c
index 2fd1c98..23a0185 100644
--- a/source/rpc_server/srv_samr_nt.c
+++ b/source/rpc_server/srv_samr_nt.c
@@ -4168,11 +4168,13 @@ NTSTATUS _samr_del_groupmem(pipes_struct *p, 
SAMR_Q_DEL_GROUPMEM *q_u, SAMR_R_DE
 }
 
 /*********************************************************************
- _samr_delete_dom_user
+ _samr_DeleteUser
 *********************************************************************/
 
-NTSTATUS _samr_delete_dom_user(pipes_struct *p, SAMR_Q_DELETE_DOM_USER *q_u, 
SAMR_R_DELETE_DOM_USER *r_u )
+NTSTATUS _samr_DeleteUser(pipes_struct *p,
+                         struct samr_DeleteUser *r)
 {
+       NTSTATUS status;
        DOM_SID user_sid;
        struct samu *sam_pass=NULL;
        uint32 acc_granted;
@@ -4181,14 +4183,15 @@ NTSTATUS _samr_delete_dom_user(pipes_struct *p, 
SAMR_Q_DELETE_DOM_USER *q_u, SAM
        DISP_INFO *disp_info = NULL;
        bool ret;
 
-       DEBUG(5, ("_samr_delete_dom_user: %d\n", __LINE__));
+       DEBUG(5, ("_samr_DeleteUser: %d\n", __LINE__));
 
        /* Find the policy handle. Open a policy on it. */
-       if (!get_lsa_policy_samr_sid(p, &q_u->user_pol, &user_sid, 
&acc_granted, &disp_info)) 
+       if (!get_lsa_policy_samr_sid(p, r->in.user_handle, &user_sid, 
&acc_granted, &disp_info)) 
                return NT_STATUS_INVALID_HANDLE;
                
-       if (!NT_STATUS_IS_OK(r_u->status = 
access_check_samr_function(acc_granted, STD_RIGHT_DELETE_ACCESS, 
"_samr_delete_dom_user"))) {
-               return r_u->status;
+       status = access_check_samr_function(acc_granted, 
STD_RIGHT_DELETE_ACCESS, "_samr_DeleteUser");
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
        }
                
        if (!sid_check_is_in_our_domain(&user_sid))
@@ -4204,7 +4207,7 @@ NTSTATUS _samr_delete_dom_user(pipes_struct *p, 
SAMR_Q_DELETE_DOM_USER *q_u, SAM
        unbecome_root();
 
        if( !ret ) {
-               DEBUG(5,("_samr_delete_dom_user:User %s doesn't exist.\n", 
+               DEBUG(5,("_samr_DeleteUser: User %s doesn't exist.\n", 
                        sid_string_dbg(&user_sid)));
                TALLOC_FREE(sam_pass);
                return NT_STATUS_NO_SUCH_USER;
@@ -4224,25 +4227,25 @@ NTSTATUS _samr_delete_dom_user(pipes_struct *p, 
SAMR_Q_DELETE_DOM_USER *q_u, SAM
        if ( can_add_accounts )
                become_root();
 
-       r_u->status = pdb_delete_user(p->mem_ctx, sam_pass);
+       status = pdb_delete_user(p->mem_ctx, sam_pass);
 
        if ( can_add_accounts )
                unbecome_root();
                
        /******** END SeAddUsers BLOCK *********/
                
-       if ( !NT_STATUS_IS_OK(r_u->status) ) {
-               DEBUG(5,("_samr_delete_dom_user: Failed to delete entry for "
+       if ( !NT_STATUS_IS_OK(status) ) {
+               DEBUG(5,("_samr_DeleteUser: Failed to delete entry for "
                         "user %s: %s.\n", pdb_get_username(sam_pass),
-                        nt_errstr(r_u->status)));
+                        nt_errstr(status)));
                TALLOC_FREE(sam_pass);
-               return r_u->status;
+               return status;
        }
 
 
        TALLOC_FREE(sam_pass);
 
-       if (!close_policy_hnd(p, &q_u->user_pol))
+       if (!close_policy_hnd(p, r->in.user_handle))
                return NT_STATUS_OBJECT_NAME_INVALID;
 
        force_flush_samr_cache(disp_info);
@@ -4251,11 +4254,13 @@ NTSTATUS _samr_delete_dom_user(pipes_struct *p, 
SAMR_Q_DELETE_DOM_USER *q_u, SAM
 }
 
 /*********************************************************************
- _samr_delete_dom_group
+ _samr_DeleteDomainGroup
 *********************************************************************/
 
-NTSTATUS _samr_delete_dom_group(pipes_struct *p, SAMR_Q_DELETE_DOM_GROUP *q_u, 
SAMR_R_DELETE_DOM_GROUP *r_u)
+NTSTATUS _samr_DeleteDomainGroup(pipes_struct *p,
+                                struct samr_DeleteDomainGroup *r)
 {
+       NTSTATUS status;
        DOM_SID group_sid;
        uint32 group_rid;
        uint32 acc_granted;
@@ -4263,14 +4268,15 @@ NTSTATUS _samr_delete_dom_group(pipes_struct *p, 
SAMR_Q_DELETE_DOM_GROUP *q_u, S
        bool can_add_accounts;
        DISP_INFO *disp_info = NULL;
 
-       DEBUG(5, ("samr_delete_dom_group: %d\n", __LINE__));
+       DEBUG(5, ("samr_DeleteDomainGroup: %d\n", __LINE__));
 
        /* Find the policy handle. Open a policy on it. */
-       if (!get_lsa_policy_samr_sid(p, &q_u->group_pol, &group_sid, 
&acc_granted, &disp_info)) 
+       if (!get_lsa_policy_samr_sid(p, r->in.group_handle, &group_sid, 
&acc_granted, &disp_info)) 
                return NT_STATUS_INVALID_HANDLE;
-               
-       if (!NT_STATUS_IS_OK(r_u->status = 
access_check_samr_function(acc_granted, STD_RIGHT_DELETE_ACCESS, 
"_samr_delete_dom_group"))) {
-               return r_u->status;
+
+       status = access_check_samr_function(acc_granted, 
STD_RIGHT_DELETE_ACCESS, "_samr_DeleteDomainGroup");
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
        }
 
        DEBUG(10, ("sid is %s\n", sid_string_dbg(&group_sid)));
@@ -4288,22 +4294,22 @@ NTSTATUS _samr_delete_dom_group(pipes_struct *p, 
SAMR_Q_DELETE_DOM_GROUP *q_u, S
        if ( can_add_accounts )
                become_root();
 
-       r_u->status = pdb_delete_dom_group(p->mem_ctx, group_rid);
+       status = pdb_delete_dom_group(p->mem_ctx, group_rid);
 
        if ( can_add_accounts )
                unbecome_root();
                
        /******** END SeAddUsers BLOCK *********/
        
-       if ( !NT_STATUS_IS_OK(r_u->status) ) {
-               DEBUG(5,("_samr_delete_dom_group: Failed to delete mapping "
+       if ( !NT_STATUS_IS_OK(status) ) {
+               DEBUG(5,("_samr_DeleteDomainGroup: Failed to delete mapping "
                         "entry for group %s: %s\n",
                         sid_string_dbg(&group_sid),
-                        nt_errstr(r_u->status)));
-               return r_u->status;
+                        nt_errstr(status)));
+               return status;
        }
        
-       if (!close_policy_hnd(p, &q_u->group_pol))
+       if (!close_policy_hnd(p, r->in.group_handle))
                return NT_STATUS_OBJECT_NAME_INVALID;
 
        force_flush_samr_cache(disp_info);
@@ -4312,10 +4318,11 @@ NTSTATUS _samr_delete_dom_group(pipes_struct *p, 
SAMR_Q_DELETE_DOM_GROUP *q_u, S
 }
 
 /*********************************************************************
- _samr_delete_dom_alias
+ _samr_DeleteDomAlias
 *********************************************************************/
 
-NTSTATUS _samr_delete_dom_alias(pipes_struct *p, SAMR_Q_DELETE_DOM_ALIAS *q_u, 
SAMR_R_DELETE_DOM_ALIAS *r_u)
+NTSTATUS _samr_DeleteDomAlias(pipes_struct *p,
+                             struct samr_DeleteDomAlias *r)
 {
        DOM_SID alias_sid;
        uint32 acc_granted;
@@ -4324,18 +4331,19 @@ NTSTATUS _samr_delete_dom_alias(pipes_struct *p, 
SAMR_Q_DELETE_DOM_ALIAS *q_u, S
        NTSTATUS status;
        DISP_INFO *disp_info = NULL;
 
-       DEBUG(5, ("_samr_delete_dom_alias: %d\n", __LINE__));
+       DEBUG(5, ("_samr_DeleteDomAlias: %d\n", __LINE__));
 
        /* 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;
        
        /* copy the handle to the outgoing reply */
 
-       memcpy( &r_u->pol, &q_u->alias_pol, sizeof(r_u->pol) );
+       memcpy(r->out.alias_handle, r->in.alias_handle, 
sizeof(r->out.alias_handle));
 
-       if (!NT_STATUS_IS_OK(r_u->status = 
access_check_samr_function(acc_granted, STD_RIGHT_DELETE_ACCESS, 
"_samr_delete_dom_alias"))) {
-               return r_u->status;
+       status = access_check_samr_function(acc_granted, 
STD_RIGHT_DELETE_ACCESS, "_samr_DeleteDomAlias");
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
        }
 
        DEBUG(10, ("sid is %s\n", sid_string_dbg(&alias_sid)));
@@ -4370,7 +4378,7 @@ NTSTATUS _samr_delete_dom_alias(pipes_struct *p, 
SAMR_Q_DELETE_DOM_ALIAS *q_u, S
        if ( !NT_STATUS_IS_OK(status))
                return status;
 
-       if (!close_policy_hnd(p, &q_u->alias_pol))
+       if (!close_policy_hnd(p, r->in.alias_handle))
                return NT_STATUS_OBJECT_NAME_INVALID;
 
        force_flush_samr_cache(disp_info);
@@ -5261,16 +5269,6 @@ NTSTATUS _samr_AddGroupMember(pipes_struct *p,
 /****************************************************************
 ****************************************************************/
 
-NTSTATUS _samr_DeleteDomainGroup(pipes_struct *p,
-                                struct samr_DeleteDomainGroup *r)
-{
-       p->rng_fault_state = true;
-       return NT_STATUS_NOT_IMPLEMENTED;
-}
-
-/****************************************************************
-****************************************************************/
-
 NTSTATUS _samr_DeleteGroupMember(pipes_struct *p,
                                 struct samr_DeleteGroupMember *r)
 {
@@ -5321,16 +5319,6 @@ NTSTATUS _samr_SetAliasInfo(pipes_struct *p,
 /****************************************************************
 ****************************************************************/
 
-NTSTATUS _samr_DeleteDomAlias(pipes_struct *p,
-                             struct samr_DeleteDomAlias *r)
-{
-       p->rng_fault_state = true;
-       return NT_STATUS_NOT_IMPLEMENTED;
-}
-
-/****************************************************************
-****************************************************************/
-
 NTSTATUS _samr_AddAliasMember(pipes_struct *p,
                              struct samr_AddAliasMember *r)
 {
@@ -5361,16 +5349,6 @@ NTSTATUS _samr_GetMembersInAlias(pipes_struct *p,
 /****************************************************************
 ****************************************************************/
 
-NTSTATUS _samr_DeleteUser(pipes_struct *p,
-                         struct samr_DeleteUser *r)
-{
-       p->rng_fault_state = true;
-       return NT_STATUS_NOT_IMPLEMENTED;
-}
-
-/****************************************************************
-****************************************************************/
-
 NTSTATUS _samr_QueryUserInfo(pipes_struct *p,
                             struct samr_QueryUserInfo *r)
 {


-- 
Samba Shared Repository

Reply via email to