[SCM] Samba Shared Repository - branch v4-0-test updated - release-4-0-0alpha3-1586-g49b04ca

Volker Lendecke vlendec at samba.org
Mon May 19 13:59:43 GMT 2008


The branch, v4-0-test has been updated
       via  49b04ca7aadf264e500d83bc8d3cb5173a86184e (commit)
      from  cc07bd86e270c8016acd0f685d699e4a3e63cfb1 (commit)

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


- Log -----------------------------------------------------------------
commit 49b04ca7aadf264e500d83bc8d3cb5173a86184e
Author: Volker Lendecke <vl at samba.org>
Date:   Mon May 19 15:53:09 2008 +0200

    Fix a memleak in irpc_remove_name
    
    First, even when length==0 tdb_fetch might return something. Second, for some
    weird reason there might be less data than necessary for a single server id.

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

Summary of changes:
 source/lib/messaging/messaging.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/lib/messaging/messaging.c b/source/lib/messaging/messaging.c
index 1928446..e7b6548 100644
--- a/source/lib/messaging/messaging.c
+++ b/source/lib/messaging/messaging.c
@@ -1085,8 +1085,14 @@ void irpc_remove_name(struct messaging_context *msg_ctx, const char *name)
 		return;
 	}
 	rec = tdb_fetch_bystring(t->tdb, name);
+	if (rec.dptr == NULL) {
+		tdb_unlock_bystring(t->tdb, name);
+		talloc_free(t);
+		return;
+	}
 	count = rec.dsize / sizeof(struct server_id);
 	if (count == 0) {
+		free(rec.dptr);
 		tdb_unlock_bystring(t->tdb, name);
 		talloc_free(t);
 		return;


-- 
Samba Shared Repository


More information about the samba-cvs mailing list