[SCM] Samba Shared Repository - branch master updated

Martin Schwenke martins at samba.org
Fri Oct 17 04:57:01 MDT 2014


The branch, master has been updated
       via  470af88 ctdb-tools: Fix heap-use-after-free problem
      from  71cb574 libcli/smb: try to negotiate SMB2_ENCRYPTION_AES128_GCM

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


- Log -----------------------------------------------------------------
commit 470af881479d1a1588dc23ef40622b4d8f006b61
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Tue Oct 14 17:52:55 2014 +1100

    ctdb-tools: Fix heap-use-after-free problem
    
    Found by address sanitizer.
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Martin Schwenke <martin at meltin.net>
    
    Autobuild-User(master): Martin Schwenke <martins at samba.org>
    Autobuild-Date(master): Fri Oct 17 12:56:02 CEST 2014 on sn-devel-104

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

Summary of changes:
 ctdb/tools/ctdb.c |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/ctdb/tools/ctdb.c b/ctdb/tools/ctdb.c
index 71dfc28..c34e33d 100644
--- a/ctdb/tools/ctdb.c
+++ b/ctdb/tools/ctdb.c
@@ -896,6 +896,7 @@ static int find_node_xpnn(void)
 	TALLOC_CTX *mem_ctx = talloc_new(NULL);
 	struct pnn_node *pnn_nodes;
 	struct pnn_node *pnn_node;
+	int pnn;
 
 	pnn_nodes = read_nodes_file(mem_ctx);
 	if (pnn_nodes == NULL) {
@@ -906,8 +907,9 @@ static int find_node_xpnn(void)
 
 	for(pnn_node=pnn_nodes;pnn_node;pnn_node=pnn_node->next) {
 		if (ctdb_sys_have_ip(&pnn_node->addr)) {
+			pnn = pnn_node->pnn;
 			talloc_free(mem_ctx);
-			return pnn_node->pnn;
+			return pnn;
 		}
 	}
 
@@ -1818,6 +1820,7 @@ find_other_host_for_public_ip(struct ctdb_context *ctdb, ctdb_sock_addr *addr)
 	struct ctdb_all_public_ips *ips;
 	struct ctdb_node_map *nodemap=NULL;
 	int i, j, ret;
+	int pnn;
 
 	ret = ctdb_ctrl_getnodemap(ctdb, TIMELIMIT(), CTDB_CURRENT_NODE, tmp_ctx, &nodemap);
 	if (ret != 0) {
@@ -1843,8 +1846,9 @@ find_other_host_for_public_ip(struct ctdb_context *ctdb, ctdb_sock_addr *addr)
 
 		for (j=0;j<ips->num;j++) {
 			if (ctdb_same_ip(addr, &ips->ips[j].addr)) {
+				pnn = nodemap->nodes[i].pnn;
 				talloc_free(tmp_ctx);
-				return nodemap->nodes[i].pnn;
+				return pnn;
 			}
 		}
 		talloc_free(ips);


-- 
Samba Shared Repository


More information about the samba-cvs mailing list