The branch, v4-0-test has been updated
       via  1d610ce s4:winbind: don't leak libnet_context into the main event 
context (bug #9929)
      from  62e25dc Fix bug 9900: is_printer_published GUID retrieval

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


- Log -----------------------------------------------------------------
commit 1d610ce1a14f5a97c9b5cacca839b245df4bae6a
Author: Stefan Metzmacher <[email protected]>
Date:   Fri May 31 16:04:26 2013 +0200

    s4:winbind: don't leak libnet_context into the main event context (bug 
#9929)
    
    This needs to be a talloc child of struct wbsrv_domain
    otherwise the cleanup of a broken connection doesn't work.
    
    The following command can trigger the leak on a domain controller.
    
    root@dc:~/samba# ls -l /var/lib/samba/sysvol/samba.private/
    total 16
    drwxrwx---+ 5 root 3000000 4096 May 14 14:46 Policies
    drwxrwx---+ 2 root 3000000 4096 May 14 11:45 scripts
    
    gid 3000000 belongs to Builtin\Administrators.
    
    The code triggers a ncacn_np: connection to the local smbd
    and complains that domain BUILTIN is not available:
    
    [2013/05/29 17:28:03,  2] 
../source4/winbind/wb_init_domain.c:376(init_domain_recv_queryinfo)
      Expected domain name BUILTIN, DC dc.samba.private said SAMBA
    
    In that case the connection was not closed, which is fixed by this commit.
    
    Using ncalrpc: for all local SIDs and serving the BUILTIN domain is
    a project for another day...
    
    Signed-off-by: Stefan Metzmacher <[email protected]>
    
    Reviewed-by: Andrew Bartlett <[email protected]>
    
    Autobuild-User(master): Andrew Bartlett <[email protected]>
    Autobuild-Date(master): Tue Jun  4 11:05:09 CEST 2013 on sn-devel-104
    (cherry picked from commit 097a8c723925d3e35606215cb16be28a37b0112e)
    
    Autobuild-User(v4-0-test): Karolin Seeger <[email protected]>
    Autobuild-Date(v4-0-test): Wed Jun  5 13:57:16 CEST 2013 on sn-devel-104

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

Summary of changes:
 source4/winbind/wb_init_domain.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/winbind/wb_init_domain.c b/source4/winbind/wb_init_domain.c
index 5e2aa47..70dbaa9 100644
--- a/source4/winbind/wb_init_domain.c
+++ b/source4/winbind/wb_init_domain.c
@@ -144,6 +144,8 @@ struct composite_context *wb_init_domain_send(TALLOC_CTX 
*mem_ctx,
 
        state->domain->libnet_ctx = 
libnet_context_init(service->task->event_ctx, 
                                                        service->task->lp_ctx);
+       if (state->domain->libnet_ctx == NULL) goto failed;
+       talloc_steal(state->domain, state->domain->libnet_ctx);
 
        /* Create a credentials structure */
        state->domain->libnet_ctx->cred = cli_credentials_init(state->domain);


-- 
Samba Shared Repository

Reply via email to