From d354b430ff0473764db8ea492a68d10946dadc23 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Wed, 28 Jun 2006 20:39:07 +0000 Subject: r16642: Fix show-stopper bug #3876. Double-free in wins server code. Jerry please merge for 3.0.23. Jeremy. --- source/nmbd/nmbd_winsserver.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'source/nmbd') diff --git a/source/nmbd/nmbd_winsserver.c b/source/nmbd/nmbd_winsserver.c index 29d5c41de82..86f7fd58502 100644 --- a/source/nmbd/nmbd_winsserver.c +++ b/source/nmbd/nmbd_winsserver.c @@ -76,6 +76,7 @@ static struct name_record *wins_record_to_name_record(TDB_DATA key, TDB_DATA dat if (!namerec) { return NULL; } + ZERO_STRUCTP(namerec); namerec->data.ip = SMB_MALLOC_ARRAY(struct in_addr, num_ips); if (!namerec->data.ip) { @@ -294,7 +295,6 @@ BOOL remove_name_from_wins_namelist(struct name_record *namerec) ret = tdb_delete(wins_tdb, key); DLIST_REMOVE(wins_server_subnet->namelist, namerec); - SAFE_FREE(namerec->data.ip); /* namerec must be freed by the caller */ -- cgit