The branch, v3-6-test has been updated
       via  3b4268f s3-netlogon: Fix setting the machinge account password.
      from  110ee60 Fix bug #8548 - winbind_samlogon_retry_loop ignores 
logon_parameters flags.

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


- Log -----------------------------------------------------------------
commit 3b4268ff0929740a2845a02a5b6f2596ff31f7f9
Author: Andreas Schneider <a...@samba.org>
Date:   Thu Oct 27 11:21:08 2011 +0200

    s3-netlogon: Fix setting the machinge account password.
    
    This bug has been found with uid wrapper.
    (cherry picked from commit bda9752b1036c4d4db76a526a79a091419bf757c)
    
    Fix bug #8550 (Calls inside netr_set_machine_account_password() to set the
    machine account password must be done as root).

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

Summary of changes:
 source3/rpc_server/netlogon/srv_netlog_nt.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/rpc_server/netlogon/srv_netlog_nt.c 
b/source3/rpc_server/netlogon/srv_netlog_nt.c
index aa424e0..ecdfac7 100644
--- a/source3/rpc_server/netlogon/srv_netlog_nt.c
+++ b/source3/rpc_server/netlogon/srv_netlog_nt.c
@@ -1120,6 +1120,7 @@ static NTSTATUS 
netr_set_machine_account_password(TALLOC_CTX *mem_ctx,
                goto out;
        }
 
+       become_root();
        status = samr_find_machine_account(mem_ctx,
                                           h,
                                           account_name,
@@ -1127,6 +1128,7 @@ static NTSTATUS 
netr_set_machine_account_password(TALLOC_CTX *mem_ctx,
                                           NULL,
                                           NULL,
                                           &user_handle);
+       unbecome_root();
        if (!NT_STATUS_IS_OK(status)) {
                goto out;
        }
@@ -1170,12 +1172,14 @@ static NTSTATUS 
netr_set_machine_account_password(TALLOC_CTX *mem_ctx,
 
        info->info18 = info18;
 
+       become_root();
        status = dcerpc_samr_SetUserInfo2(h,
                                          mem_ctx,
                                          &user_handle,
                                          UserInternal1Information,
                                          info,
                                          &result);
+       unbecome_root();
        if (!NT_STATUS_IS_OK(status)) {
                goto out;
        }


-- 
Samba Shared Repository

Reply via email to