[SCM] Samba Shared Repository - branch v3-2-stable updated - release-3-2-0rc2-37-gece9a65

Karolin Seeger kseeger at samba.org
Wed Jun 18 21:01:39 GMT 2008


The branch, v3-2-stable has been updated
       via  ece9a659dee5e7f97125053745df7d1095bdb6ec (commit)
       via  0f468b9821c5b2bfb2c0fdcb8853103cfa71fc9c (commit)
       via  01675653728c0f0b3a45356f0fee0d7648da7af4 (commit)
      from  2dc66cb5813ef138ccea70fd7b9c9599a893e33a (commit)

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


- Log -----------------------------------------------------------------
commit ece9a659dee5e7f97125053745df7d1095bdb6ec
Author: Volker Lendecke <vl at samba.org>
Date:   Wed Jun 18 16:30:37 2008 +0200

    Revert "Fix a memleak in svcctl_init_keys()"
    
    This reverts commit b1afb31f3cadd4749bf6e3eb5d8935588bf8ebfc.
    
    This one is very strange: I need to investigate why valgrind showed it as
    leaking, and why in my initial tests this did not fail.
    (cherry picked from commit 24730f5981efb920811e7929a9483bd72bb0984c)

commit 0f468b9821c5b2bfb2c0fdcb8853103cfa71fc9c
Author: Michael Adam <obnox at samba.org>
Date:   Wed Jun 18 14:50:53 2008 +0200

    Fix Bug #5548 (segfauls in handle_include with %m macro expansion).
    
    In alloc_sub_basic, when expanding '%m', substitute "" instead of
    NULL for remote_machine when this is NULL. Else a NULL string
    is returned.
    
    Michael
    (cherry picked from commit c65b456c6a145d15b7fd27a2a3440a0709fc3277)
    (cherry picked from commit ffaed197d8cb261e2765b2de6cad17cac7d49672)

commit 01675653728c0f0b3a45356f0fee0d7648da7af4
Author: Volker Lendecke <vl at samba.org>
Date:   Tue Jun 17 21:08:56 2008 +0200

    Fix a brown paper bag segfault in clitar
    
    Thanks to "No Body is Perfect" from gmail, whoever that is :-)
    
    Volker
    (cherry picked from commit 679d8dfa390601f777bfb43c02cd921eae5edcf4)

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

Summary of changes:
 source/client/client.c        |    2 +-
 source/client/clitar.c        |    2 +-
 source/lib/substitute.c       |    5 ++++-
 source/services/services_db.c |   11 +----------
 4 files changed, 7 insertions(+), 13 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/client/client.c b/source/client/client.c
index d684ba8..438306e 100644
--- a/source/client/client.c
+++ b/source/client/client.c
@@ -40,7 +40,7 @@ static char *desthost;
 static char *calling_name;
 static bool grepable = false;
 static char *cmdstr = NULL;
-static const char *cmd_ptr = NULL;
+const char *cmd_ptr = NULL;
 
 static int io_bufsize = 524288;
 
diff --git a/source/client/clitar.c b/source/client/clitar.c
index f53c9b4..084f87e 100644
--- a/source/client/clitar.c
+++ b/source/client/clitar.c
@@ -100,7 +100,7 @@ char tar_type='\0';
 static char **cliplist=NULL;
 static int clipn=0;
 static bool must_free_cliplist = False;
-static const char *cmd_ptr = NULL;
+extern const char *cmd_ptr;
 
 extern bool lowercase;
 extern uint16 cnum;
diff --git a/source/lib/substitute.c b/source/lib/substitute.c
index 62dfdb5..6c74f54 100644
--- a/source/lib/substitute.c
+++ b/source/lib/substitute.c
@@ -648,7 +648,10 @@ char *alloc_sub_basic(const char *smb_name, const char *domain_name,
 			a_string = realloc_string_sub(a_string, "%h", myhostname());
 			break;
 		case 'm' :
-			a_string = realloc_string_sub(a_string, "%m", remote_machine);
+			a_string = realloc_string_sub(a_string, "%m",
+						      remote_machine
+						      ? remote_machine
+						      : "");
 			break;
 		case 'v' :
 			a_string = realloc_string_sub(a_string, "%v", SAMBA_VERSION_STRING);
diff --git a/source/services/services_db.c b/source/services/services_db.c
index ae9fe1a..620b036 100644
--- a/source/services/services_db.c
+++ b/source/services/services_db.c
@@ -447,22 +447,15 @@ void svcctl_init_keys( void )
 	REGSUBKEY_CTR *subkeys;
 	REGISTRY_KEY *key = NULL;
 	WERROR wresult;
-	struct nt_user_token *token = get_root_nt_token();
-
-	if (token == NULL) {
-		DEBUG(0, ("svcctl_init_keys: get_root_nt_token failed\n"));
-		return;
-	}
 
 	/* bad mojo here if the lookup failed.  Should not happen */
 
 	wresult = regkey_open_internal( NULL, &key, KEY_SERVICES,
-					token, REG_KEY_ALL );
+					get_root_nt_token(), REG_KEY_ALL );
 
 	if ( !W_ERROR_IS_OK(wresult) ) {
 		DEBUG(0,("svcctl_init_keys: key lookup failed! (%s)\n",
 			dos_errstr(wresult)));
-		TALLOC_FREE(token);
 		return;
 	}
 
@@ -471,7 +464,6 @@ void svcctl_init_keys( void )
 	if ( !(subkeys = TALLOC_ZERO_P( key, REGSUBKEY_CTR )) ) {
 		DEBUG(0,("svcctl_init_keys: talloc() failed!\n"));
 		TALLOC_FREE( key );
-		TALLOC_FREE(token);
 		return;
 	}
 
@@ -494,7 +486,6 @@ void svcctl_init_keys( void )
 	}
 
 	TALLOC_FREE( key );
-	TALLOC_FREE(token);
 
 	/* initialize the control hooks */
 


-- 
Samba Shared Repository


More information about the samba-cvs mailing list