diff options
-rw-r--r-- | source3/smbd/server_exit.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/source3/smbd/server_exit.c b/source3/smbd/server_exit.c index 1de9a0989c..b69eb4aab3 100644 --- a/source3/smbd/server_exit.c +++ b/source3/smbd/server_exit.c @@ -93,7 +93,12 @@ static void exit_server_common(enum server_exit_reason how, print_notify_send_messages(smbd_messaging_context(), 3); /* delete our entry in the serverid database. */ - serverid_deregister_self(); + if (am_parent) { + /* + * For children the parent takes care of cleaning up + */ + serverid_deregister_self(); + } #ifdef WITH_DFS if (dcelogin_atmost_once) { |