The branch, master has been updated
       via  48de3e5 s3:rpc_server/svcctl: don't allocate return values on a 
temporary stackframe
      from  03ea6b5 s4:winbind/wb_samba3_protocol.c - rework it using concrete 
enum values

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 48de3e51eacbd1051f79dc99aaac8a4ec988fde5
Author: Stefan Metzmacher <[email protected]>
Date:   Thu Jun 16 08:33:09 2011 +0200

    s3:rpc_server/svcctl: don't allocate return values on a temporary stackframe
    
    And always initialize the whole return structure.
    
    This caused samba3.posix_s3.rpc.svcctl to be flakey.
    
    metze
    
    Autobuild-User: Stefan Metzmacher <[email protected]>
    Autobuild-Date: Thu Jun 16 11:34:34 CEST 2011 on sn-devel-104

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

Summary of changes:
 source3/rpc_server/svcctl/srv_svcctl_nt.c |    8 +++-----
 1 files changed, 3 insertions(+), 5 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/rpc_server/svcctl/srv_svcctl_nt.c 
b/source3/rpc_server/svcctl/srv_svcctl_nt.c
index 96ac399..4f8a2c1 100644
--- a/source3/rpc_server/svcctl/srv_svcctl_nt.c
+++ b/source3/rpc_server/svcctl/srv_svcctl_nt.c
@@ -668,17 +668,18 @@ WERROR _svcctl_QueryServiceStatusEx(struct pipes_struct 
*p,
 /********************************************************************
 ********************************************************************/
 
-static WERROR fill_svc_config(TALLOC_CTX *ctx,
+static WERROR fill_svc_config(TALLOC_CTX *mem_ctx,
                              struct messaging_context *msg_ctx,
                              struct auth_serversupplied_info *session_info,
                              const char *name,
                              struct QUERY_SERVICE_CONFIG *config)
 {
-       TALLOC_CTX *mem_ctx = talloc_stackframe();
        const char *result = NULL;
 
        /* now fill in the individual values */
 
+       ZERO_STRUCTP(config);
+
        config->displayname = svcctl_lookup_dispname(mem_ctx,
                                                     msg_ctx,
                                                     session_info,
@@ -720,9 +721,6 @@ static WERROR fill_svc_config(TALLOC_CTX *ctx,
        else
                config->start_type = SVCCTL_DEMAND_START;
 
-
-       talloc_free(mem_ctx);
-
        return WERR_OK;
 }
 


-- 
Samba Shared Repository

Reply via email to