Dialplan mutexes.
More...
Go to the source code of this file.
|
static void | __reg_module (void) |
|
static void | __unreg_module (void) |
|
struct ast_module * | AST_MODULE_SELF_SYM (void) |
|
static int | get_lock (struct ast_channel *chan, char *lockname, int trylock) |
|
static char * | handle_cli_locks_show (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
|
static int | load_module (void) |
|
static void | lock_fixup (void *data, struct ast_channel *oldchan, struct ast_channel *newchan) |
|
static void | lock_free (void *data) |
|
static int | lock_read (struct ast_channel *chan, const char *cmd, char *data, char *buf, size_t len) |
|
static int | trylock_read (struct ast_channel *chan, const char *cmd, char *data, char *buf, size_t len) |
|
static int | unload_module (void) |
|
static int | unlock_read (struct ast_channel *chan, const char *cmd, char *data, char *buf, size_t len) |
|
|
static struct ast_module_info | __mod_info = { .name = AST_MODULE, .flags = AST_MODFLAG_LOAD_ORDER , .description = "Dialplan mutexes" , .key = "This paragraph is copyright (c) 2006 by Digium, Inc. \In order for your module to load, it must return this \key via a function called \"key\". Any code which \includes this paragraph must be licensed under the GNU \General Public License version 2 or later (at your \option). In addition to Digium's general reservations \of rights, Digium expressly reserves the right to \allow other parties to license this paragraph under \different terms. Any use of Digium, Inc. trademarks or \logos (including \"Asterisk\" or \"Digium\") without \express written permission of Digium, Inc. is prohibited.\n" , .buildopt_sum = "da6642af068ee5e6490c5b1d2cc1d238" , .load = load_module, .unload = unload_module, .load_pri = AST_MODPRI_DEFAULT, .support_level = AST_MODULE_SUPPORT_CORE, } |
|
static const struct ast_module_info * | ast_module_info = &__mod_info |
|
static struct ast_cli_entry | cli_locks_show = { .handler = handle_cli_locks_show , .summary = "List func_lock locks." ,} |
|
static struct ast_custom_function | lock_function |
|
static const struct ast_datastore_info | lock_info |
|
static struct locklist | locklist = { .first = NULL, .last = NULL, .lock = { PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP , NULL, {1, 0} } , } |
|
static struct ast_custom_function | trylock_function |
|
static int | unloading = 0 |
|
static struct ast_custom_function | unlock_function |
|
Initial value:= {
.name = "LOCK",
.read = lock_read,
.read_max = 2,
}
Definition at line 477 of file func_lock.c.
Initial value:= {
.type = "MUTEX",
.destroy = lock_free,
.chan_fixup = lock_fixup,
}
Definition at line 127 of file func_lock.c.
Initial value:= {
.name = "TRYLOCK",
.read = trylock_read,
.read_max = 2,
}
Definition at line 483 of file func_lock.c.
Initial value:= {
.name = "UNLOCK",
.read = unlock_read,
.read_max = 2,
}
Definition at line 489 of file func_lock.c.