1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-24 21:34:56 +03:00

Fix Bug 8152 - smbd crash in release_ip()

release_ip() needs the private_data, but it was never saved away
to feed it into release_ip() later

Autobuild-User: Christian Ambach <ambi@samba.org>
Autobuild-Date: Thu May 19 21:21:14 CEST 2011 on sn-devel-104
This commit is contained in:
Christian Ambach 2011-05-19 18:13:40 +02:00
parent 58b77f2267
commit 642c6ba2b9
2 changed files with 8 additions and 0 deletions

View File

@ -1358,6 +1358,11 @@ NTSTATUS ctdbd_register_ips(struct ctdbd_connection *conn,
}
conn->release_ip_handler = release_ip_handler;
/*
* store the IP address of the server socket for later
* comparison in release_ip()
*/
conn->release_ip_priv = private_data;
/*
* We want to be told about IP releases

View File

@ -2358,6 +2358,9 @@ static void release_ip(const char *ip, void *priv)
p = addr + 7;
}
DEBUG(10, ("Got release IP message for %s, "
"our address is %s\n", ip, p));
if ((strcmp(p, ip) == 0) || ((p != addr) && strcmp(addr, ip) == 0)) {
/* we can't afford to do a clean exit - that involves
database writes, which would potentially mean we