From ad4a10dd059c8b33cf7d606af292dd6f6653f3ef Mon Sep 17 00:00:00 2001 From: Christian Ambach Date: Mon, 4 Jul 2011 17:55:54 +0200 Subject: [PATCH] s3:smb2 fix smbd crash on premature end of smb2 conn (Bug 8286) when smbd tries to clean up locks after a premature end of a smb2 connection, lock_db has already been freed and so it crashes this patch changes the order in which items are freed so that lock_db is still around when it is needed Jeremy, Metze, please check Autobuild-User: Christian Ambach Autobuild-Date: Mon Jul 4 20:00:26 CEST 2011 on sn-devel-104 --- source3/smbd/server_exit.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source3/smbd/server_exit.c b/source3/smbd/server_exit.c index c7a318d891f..05a4ece8e3c 100644 --- a/source3/smbd/server_exit.c +++ b/source3/smbd/server_exit.c @@ -152,9 +152,6 @@ static void exit_server_common(enum server_exit_reason how, rpc_lsarpc_shutdown(); } - locking_end(); - printing_end(); - /* * we need to force the order of freeing the following, * because smbd_msg_ctx is not a talloc child of smbd_server_conn. @@ -165,6 +162,9 @@ static void exit_server_common(enum server_exit_reason how, server_event_context_free(); TALLOC_FREE(smbd_memcache_ctx); + locking_end(); + printing_end(); + if (how != SERVER_EXIT_NORMAL) { DEBUGSEP(0); DEBUG(0,("Abnormal server exit: %s\n", -- 2.34.1