summaryrefslogtreecommitdiff
path: root/source3/smbd/server.c
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2009-05-27 18:40:42 +0200
committerStefan Metzmacher <metze@samba.org>2009-06-03 17:54:38 +0200
commit0099f4758e88dec5295605498a7387ec5394c8d4 (patch)
treeb67b3f3c4f15d8d2d728a77d1d4890a008353d99 /source3/smbd/server.c
parent076aaf3f4264ca1966a3626c9356ee869c5d4700 (diff)
downloadsamba-0099f4758e88dec5295605498a7387ec5394c8d4.tar.gz
samba-0099f4758e88dec5295605498a7387ec5394c8d4.tar.bz2
samba-0099f4758e88dec5295605498a7387ec5394c8d4.zip
s3:smbd: create a connection_struct in SMB2 Tree Connect
metze
Diffstat (limited to 'source3/smbd/server.c')
-rw-r--r--source3/smbd/server.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/source3/smbd/server.c b/source3/smbd/server.c
index 77e487ac68..a022f3e868 100644
--- a/source3/smbd/server.c
+++ b/source3/smbd/server.c
@@ -827,6 +827,15 @@ static void exit_server_common(enum server_exit_reason how,
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.
+ */
+ sconn = NULL;
+ TALLOC_FREE(smbd_server_conn);
+ TALLOC_FREE(smbd_msg_ctx);
+ TALLOC_FREE(smbd_event_ctx);
+
if (how != SERVER_EXIT_NORMAL) {
int oldlevel = DEBUGLEVEL;