summaryrefslogtreecommitdiff
path: root/source3
diff options
context:
space:
mode:
Diffstat (limited to 'source3')
-rw-r--r--source3/lib/ctdbd_conn.c2
-rw-r--r--source3/smbd/server.c4
2 files changed, 5 insertions, 1 deletions
diff --git a/source3/lib/ctdbd_conn.c b/source3/lib/ctdbd_conn.c
index 5fc4b7ce1f..1ae23bcf82 100644
--- a/source3/lib/ctdbd_conn.c
+++ b/source3/lib/ctdbd_conn.c
@@ -1190,6 +1190,8 @@ NTSTATUS ctdbd_register_ips(struct ctdbd_connection *conn,
*/
SMB_ASSERT(conn->release_ip_handler == NULL);
+ conn->release_ip_handler = release_ip_handler;
+
/*
* We want to be told about IP releases
*/
diff --git a/source3/smbd/server.c b/source3/smbd/server.c
index df6b6ae41d..265d4927f5 100644
--- a/source3/smbd/server.c
+++ b/source3/smbd/server.c
@@ -986,7 +986,9 @@ static void release_ip(const char *ip, void *priv)
away */
DEBUG(0,("Got release IP message for our IP %s - exiting immediately\n",
ip));
- _exit(0);
+ /* note we must exit with non-zero status so the unclean handler gets
+ called in the parent, so that the brl database is tickled */
+ _exit(1);
}
}