summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2012-09-21 20:36:16 +0200
committerStefan Metzmacher <metze@samba.org>2012-09-21 22:36:57 +0200
commit7a493fd867b95a7901c5f2b0c77cfb1c4496fbef (patch)
tree64d26da6b804041fcd00439d1e353541977e07b5
parentbfafb0ce838c0cc3003c35e16c99d9eb9e1266a8 (diff)
downloadsamba-7a493fd867b95a7901c5f2b0c77cfb1c4496fbef.tar.gz
samba-7a493fd867b95a7901c5f2b0c77cfb1c4496fbef.tar.bz2
samba-7a493fd867b95a7901c5f2b0c77cfb1c4496fbef.zip
s3:smbd: release the share mode lock before calling exit_server() (bug #9191)
metze Autobuild-User(master): Stefan Metzmacher <metze@samba.org> Autobuild-Date(master): Fri Sep 21 22:36:57 CEST 2012 on sn-devel-104
-rw-r--r--source3/smbd/open.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/source3/smbd/open.c b/source3/smbd/open.c
index b67c045e34..a06a9f2520 100644
--- a/source3/smbd/open.c
+++ b/source3/smbd/open.c
@@ -1464,6 +1464,7 @@ static void defer_open(struct share_mode_lock *lck,
DEBUG(0, ("Trying to defer an already deferred "
"request: mid=%llu, exiting\n",
(unsigned long long)req->mid));
+ TALLOC_FREE(lck);
exit_server("attempt to defer a deferred request");
}
}
@@ -1479,6 +1480,7 @@ static void defer_open(struct share_mode_lock *lck,
if (!push_deferred_open_message_smb(req, request_time, timeout,
state->id, (char *)state, sizeof(*state))) {
+ TALLOC_FREE(lck);
exit_server("push_deferred_open_message_smb failed");
}
if (lck) {