The branch, master has been updated
       via  8d33cdd ldb-samba: fix a memory leak in 
ldif_canonicalise_objectCategory()
      from  dff649f lib/zlib: Remove undeeded files that trigger GPL issues.

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


- Log -----------------------------------------------------------------
commit 8d33cddcb001a5a78aca036161d6223268274211
Author: Stefan Metzmacher <me...@samba.org>
Date:   Wed Jul 16 16:17:56 2014 +0200

    ldb-samba: fix a memory leak in ldif_canonicalise_objectCategory()
    
    Searches for '(objectCategory=Person)' will leak a ldb_dn structure
    on the ldb_context. These searches are typically used by Zarafa.
    
    Bug: https://bugzilla.samba.org/show_bug.cgi?id=10469
    
    Signed-off-by: Stefan Metzmacher <me...@samba.org>
    Reviewed-by: Volker Lendecke <v...@samba.org>
    
    Autobuild-User(master): Stefan Metzmacher <me...@samba.org>
    Autobuild-Date(master): Thu Jul 17 00:51:57 CEST 2014 on sn-devel-104

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

Summary of changes:
 lib/ldb-samba/ldif_handlers.c |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/lib/ldb-samba/ldif_handlers.c b/lib/ldb-samba/ldif_handlers.c
index 4425f86..d9d799c 100644
--- a/lib/ldb-samba/ldif_handlers.c
+++ b/lib/ldb-samba/ldif_handlers.c
@@ -483,8 +483,13 @@ static int ldif_canonicalise_objectCategory(struct 
ldb_context *ldb, void *mem_c
                const char *lDAPDisplayName = talloc_strndup(tmp_ctx, (char 
*)in->data, in->length);
                sclass = dsdb_class_by_lDAPDisplayName(schema, lDAPDisplayName);
                if (sclass) {
-                       struct ldb_dn *dn = ldb_dn_new(mem_ctx, ldb,  
+                       struct ldb_dn *dn = ldb_dn_new(tmp_ctx, ldb,
                                                       
sclass->defaultObjectCategory);
+                       if (dn == NULL) {
+                               talloc_free(tmp_ctx);
+                               return LDB_ERR_OPERATIONS_ERROR;
+                       }
+
                        *out = 
data_blob_string_const(ldb_dn_alloc_casefold(mem_ctx, dn));
                        talloc_free(tmp_ctx);
 


-- 
Samba Shared Repository

Reply via email to