summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/util/mutex.c56
-rw-r--r--lib/util/mutex.h75
-rw-r--r--lib/util/util.h10
-rw-r--r--lib/util/wscript_build4
4 files changed, 2 insertions, 143 deletions
diff --git a/lib/util/mutex.c b/lib/util/mutex.c
deleted file mode 100644
index 4d0df68eed..0000000000
--- a/lib/util/mutex.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- Unix SMB/CIFS implementation.
- Samba mutex/lock functions
- Copyright (C) Andrew Tridgell 2003
- Copyright (C) James J Myers 2003
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-#include "includes.h"
-#include "mutex.h"
-
-/**
- * @file
- * @brief Mutex utility functions
- */
-
-/* the registered mutex handlers */
-static struct {
- const char *name;
- struct mutex_ops ops;
-} mutex_handlers;
-
-/* read/write lock routines */
-
-
-/**
- register a set of mutex/rwlock handlers.
- Should only be called once in the execution of smbd.
-*/
-_PUBLIC_ bool register_mutex_handlers(const char *name, struct mutex_ops *ops)
-{
- if (mutex_handlers.name != NULL) {
- /* it's already registered! */
- DEBUG(2,("mutex handler '%s' already registered - failed '%s'\n",
- mutex_handlers.name, name));
- return false;
- }
-
- mutex_handlers.name = name;
- mutex_handlers.ops = *ops;
-
- DEBUG(2,("mutex handler '%s' registered\n", name));
- return true;
-}
-
diff --git a/lib/util/mutex.h b/lib/util/mutex.h
deleted file mode 100644
index bf845906f2..0000000000
--- a/lib/util/mutex.h
+++ /dev/null
@@ -1,75 +0,0 @@
-#ifndef _MUTEX_H_
-#define _MUTEX_H_
-/*
- Unix SMB/CIFS implementation.
- Samba mutex functions
- Copyright (C) Andrew Tridgell 2003
- Copyright (C) James J Myers 2003
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-/**
- * @file
- * @brief Mutex operations
- */
-
-struct mutex_ops;
-
-/* To add a new read/write lock, add it to enum rwlock_id
- */
-enum rwlock_id { RWLOCK_SMBD, /* global smbd lock */
-
- RWLOCK_MAX /* this MUST be kept last */
-};
-
-#define MUTEX_LOCK_BY_ID(mutex_index) smb_mutex_lock_by_id(mutex_index, #mutex_index)
-#define MUTEX_UNLOCK_BY_ID(mutex_index) smb_mutex_unlock_by_id(mutex_index, #mutex_index)
-#define MUTEX_INIT(mutex, name) smb_mutex_init(mutex, #name)
-#define MUTEX_DESTROY(mutex, name) smb_mutex_destroy(mutex, #name)
-#define MUTEX_LOCK(mutex, name) smb_mutex_lock(mutex, #name)
-#define MUTEX_UNLOCK(mutex, name) smb_mutex_unlock(mutex, #name)
-
-#define RWLOCK_INIT(rwlock, name) smb_rwlock_init(rwlock, #name)
-#define RWLOCK_DESTROY(rwlock, name) smb_rwlock_destroy(rwlock, #name)
-#define RWLOCK_LOCK_WRITE(rwlock, name) smb_rwlock_lock_write(rwlock, #name)
-#define RWLOCK_LOCK_READ(rwlock, name) smb_rwlock_lock_read(rwlock, #name)
-#define RWLOCK_UNLOCK(rwlock, name) smb_rwlock_unlock(rwlock, #name)
-
-
-
-/* this null typedef ensures we get the types right and avoids the
- pitfalls of void* */
-typedef struct smb_mutex {
- void *mutex;
-} smb_mutex_t;
-typedef struct {
- void *rwlock;
-} smb_rwlock_t;
-
-/* the mutex model operations structure - contains function pointers to
- the model-specific implementations of each operation */
-struct mutex_ops {
- int (*mutex_init)(smb_mutex_t *mutex, const char *name);
- int (*mutex_lock)(smb_mutex_t *mutex, const char *name);
- int (*mutex_unlock)(smb_mutex_t *mutex, const char *name);
- int (*mutex_destroy)(smb_mutex_t *mutex, const char *name);
- int (*rwlock_init)(smb_rwlock_t *rwlock, const char *name);
- int (*rwlock_lock_write)(smb_rwlock_t *rwlock, const char *name);
- int (*rwlock_lock_read)(smb_rwlock_t *rwlock, const char *name);
- int (*rwlock_unlock)(smb_rwlock_t *rwlock, const char *name);
- int (*rwlock_destroy)(smb_rwlock_t *rwlock, const char *name);
-};
-
-#endif /* endif _MUTEX_H_ */
diff --git a/lib/util/util.h b/lib/util/util.h
index c407d606a9..0073aa9051 100644
--- a/lib/util/util.h
+++ b/lib/util/util.h
@@ -42,7 +42,6 @@ extern const char *panic_action;
#include "../lib/util/time.h"
#include "../lib/util/data_blob.h"
#include "../lib/util/xfile.h"
-#include "../lib/util/mutex.h"
#include "../lib/util/byteorder.h"
#include "../lib/util/talloc_stack.h"
@@ -779,15 +778,6 @@ int ms_fnmatch(const char *pattern, const char *string, enum protocol_types prot
int gen_fnmatch(const char *pattern, const char *string);
#endif
-/* The following definitions come from lib/util/mutex.c */
-
-
-/**
- register a set of mutex/rwlock handlers.
- Should only be called once in the execution of smbd.
-*/
-_PUBLIC_ bool register_mutex_handlers(const char *name, struct mutex_ops *ops);
-
/* The following definitions come from lib/util/idtree.c */
diff --git a/lib/util/wscript_build b/lib/util/wscript_build
index e032e157d6..799d7b1ce7 100644
--- a/lib/util/wscript_build
+++ b/lib/util/wscript_build
@@ -1,9 +1,9 @@
#!/usr/bin/env python
bld.SAMBA_LIBRARY('samba-util',
- source='xfile.c debug.c fault.c signal.c system.c time.c genrand.c dprintf.c util_str.c rfc1738.c substitute.c util_strlist.c util_file.c data_blob.c util.c blocking.c util_net.c fsusage.c ms_fnmatch.c mutex.c idtree.c become_daemon.c rbtree.c talloc_stack.c smb_threads.c params.c parmlist.c util_id.c select.c',
+ source='xfile.c debug.c fault.c signal.c system.c time.c genrand.c dprintf.c util_str.c rfc1738.c substitute.c util_strlist.c util_file.c data_blob.c util.c blocking.c util_net.c fsusage.c ms_fnmatch.c idtree.c become_daemon.c rbtree.c talloc_stack.c smb_threads.c params.c parmlist.c util_id.c select.c',
public_deps='talloc LIBCRYPTO CHARSET execinfo uid_wrapper',
- public_headers='attr.h byteorder.h data_blob.h debug.h memory.h mutex.h safe_string.h time.h talloc_stack.h xfile.h dlinklist.h util.h',
+ public_headers='attr.h byteorder.h data_blob.h debug.h memory.h safe_string.h time.h talloc_stack.h xfile.h dlinklist.h util.h',
header_path= [ ('dlinklist.h util.h', '.'), ('*', 'util') ],
local_include=False,
vnum='0.0.1',