summaryrefslogtreecommitdiff
path: root/source3/lib/server_mutex.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2003-01-16 20:08:26 +0000
committerJeremy Allison <jra@samba.org>2003-01-16 20:08:26 +0000
commit6b2eb72df0bcf9143d013e64410ebde78d57b1c4 (patch)
tree95375431d54a8697750f0a12a04ef738cad166cc /source3/lib/server_mutex.c
parent862d383781b5e3959e512df58714536f0374b92a (diff)
downloadsamba-6b2eb72df0bcf9143d013e64410ebde78d57b1c4.tar.gz
samba-6b2eb72df0bcf9143d013e64410ebde78d57b1c4.tar.bz2
samba-6b2eb72df0bcf9143d013e64410ebde78d57b1c4.zip
Fixed up mutex protection around winbindd logon code. Sync with APP-HEAD.
Jeremy. (This used to be commit daf179bcd6297b525bfc644efb154734723f4d58)
Diffstat (limited to 'source3/lib/server_mutex.c')
-rw-r--r--source3/lib/server_mutex.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/source3/lib/server_mutex.c b/source3/lib/server_mutex.c
index 3e5512c734..878e5497d8 100644
--- a/source3/lib/server_mutex.c
+++ b/source3/lib/server_mutex.c
@@ -30,6 +30,8 @@
like the single-connection that NT makes. */
static char *mutex_server_name;
+/* FIXME. ref_count should be allocated per name... JRA. */
+size_t ref_count;
BOOL grab_server_mutex(const char *name)
{
@@ -38,7 +40,7 @@ BOOL grab_server_mutex(const char *name)
DEBUG(0,("grab_server_mutex: malloc failed for %s\n", name));
return False;
}
- if (!secrets_named_mutex(mutex_server_name, 10)) {
+ if (!secrets_named_mutex(mutex_server_name, 10, &ref_count)) {
DEBUG(10,("grab_server_mutex: failed for %s\n", name));
SAFE_FREE(mutex_server_name);
return False;
@@ -50,7 +52,7 @@ BOOL grab_server_mutex(const char *name)
void release_server_mutex(void)
{
if (mutex_server_name) {
- secrets_named_mutex_release(mutex_server_name);
+ secrets_named_mutex_release(mutex_server_name, &ref_count);
SAFE_FREE(mutex_server_name);
}
}