Asterisk - The Open Source Telephony Project
18.5.0
|
PacketCable COPS. More...
#include "asterisk.h"
#include <sys/types.h>
#include <sys/socket.h>
#include <fcntl.h>
#include <netdb.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <time.h>
#include <errno.h>
#include <arpa/inet.h>
#include <signal.h>
#include "asterisk/file.h"
#include "asterisk/logger.h"
#include "asterisk/channel.h"
#include "asterisk/config.h"
#include "asterisk/options.h"
#include "asterisk/pbx.h"
#include "asterisk/module.h"
#include "asterisk/cli.h"
#include "asterisk/lock.h"
#include "asterisk/pktccops.h"
Go to the source code of this file.
Data Structures | |
struct | cmts_list |
struct | cops_cmts |
struct | cops_ippool |
struct | copsmsg |
struct | gate_list |
struct | gatespec |
struct | ippool_list |
struct | pktcobj |
Macros | |
#define | AST_API_MODULE |
#define | COPS_HEADER_SIZE 8 |
#define | COPS_OBJECT_HEADER_SIZE 4 |
#define | DEFAULT_COPS_PORT "2126" |
#define | GATE_INFO_OBJ_SIZE 24 |
#define | GATE_SET_OBJ_SIZE 144 |
#define | GATEID_OBJ_SIZE 8 |
#define | PKTCCOPS_DESTROY_CURRENT_GATE |
#define | PKTCCOPS_SCOMMAND_GATE_ALLOC 1 |
#define | PKTCCOPS_SCOMMAND_GATE_ALLOC_ACK 2 |
#define | PKTCCOPS_SCOMMAND_GATE_ALLOC_ERR 3 |
#define | PKTCCOPS_SCOMMAND_GATE_CLOSE 14 |
#define | PKTCCOPS_SCOMMAND_GATE_DELETE 10 |
#define | PKTCCOPS_SCOMMAND_GATE_DELETE_ACK 11 |
#define | PKTCCOPS_SCOMMAND_GATE_DELETE_ERR 12 |
#define | PKTCCOPS_SCOMMAND_GATE_INFO 7 |
#define | PKTCCOPS_SCOMMAND_GATE_INFO_ACK 8 |
#define | PKTCCOPS_SCOMMAND_GATE_INFO_ERR 9 |
#define | PKTCCOPS_SCOMMAND_GATE_OPEN 13 |
#define | PKTCCOPS_SCOMMAND_GATE_SET 4 |
#define | PKTCCOPS_SCOMMAND_GATE_SET_ACK 5 |
#define | PKTCCOPS_SCOMMAND_GATE_SET_ERR 6 |
#define | SENDFLAGS MSG_NOSIGNAL | MSG_DONTWAIT |
Functions | |
static void | __reg_module (void) |
static void | __unreg_module (void) |
struct ast_module * | AST_MODULE_SELF_SYM (void) |
struct cops_gate *AST_OPTIONAL_API_NAME() | ast_pktccops_gate_alloc (int cmd, struct cops_gate *gate, uint32_t mta, uint32_t actcount, float bitrate, uint32_t psize, uint32_t ssip, uint16_t ssport, int(*const got_dq_gi)(struct cops_gate *gate), int(*const gate_remove)(struct cops_gate *gate)) |
static int | cops_connect (char *host, char *port) |
static uint16_t | cops_construct_gate (int cmd, char *p, uint16_t trid, uint32_t mtahost, uint32_t actcount, float rate, uint32_t psizegateid, uint32_t ssip, uint16_t ssport, uint32_t gateid, struct cops_cmts *cmts) |
static uint16_t | cops_constructgatespec (struct gatespec *gs, char *res) |
static void | cops_freemsg (struct copsmsg *p) |
static struct cops_gate * | cops_gate_cmd (int cmd, struct cops_cmts *cmts, uint16_t trid, uint32_t mta, uint32_t actcount, float bitrate, uint32_t psize, uint32_t ssip, uint16_t ssport, struct cops_gate *gate) |
static int | cops_getmsg (int sfd, struct copsmsg *recmsg) |
static int | cops_sendmsg (int sfd, struct copsmsg *sendmsg) |
static void * | do_pktccops (void *data) |
static uint32_t | ftoieeef (float n) |
static int | load_module (void) |
static int | load_pktccops_config (void) |
static int | pktccops_add_ippool (struct cops_ippool *ippool) |
static char * | pktccops_debug (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
static char * | pktccops_gatedel (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
static char * | pktccops_gateset (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
static char * | pktccops_show_cmtses (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
static char * | pktccops_show_gates (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
static char * | pktccops_show_pools (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
static void | pktccops_unregister_cmtses (void) |
static void | pktccops_unregister_ippools (void) |
static int | reload_module (void) |
static int | restart_pktc_thread (void) |
static int | unload_module (void) |
Variables | |
static struct ast_module_info | __mod_info = { .name = AST_MODULE, .flags = AST_MODFLAG_GLOBAL_SYMBOLS , .description = "PktcCOPS manager for MGCP" , .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 = AST_BUILDOPT_SUM, .support_level = AST_MODULE_SUPPORT_EXTENDED, .load = load_module, .unload = unload_module, .reload = reload_module, } |
static const struct ast_module_info * | ast_module_info = &__mod_info |
static struct ast_cli_entry | cli_pktccops [] |
struct cmts_list | cmts_list = { .first = NULL, .last = NULL, .lock = { PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP , NULL, {1, 0} } , } |
static uint16_t | cops_trid = 0 |
struct gate_list | gate_list = { .first = NULL, .last = NULL, .lock = { PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP , NULL, {1, 0} } , } |
static int | gateinfoperiod = 60 |
static int | gatetimeout = 150 |
struct ippool_list | ippool_list = { .first = NULL, .last = NULL, .lock = { PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP , NULL, {1, 0} } , } |
static uint32_t | keepalive = 60 |
static ast_mutex_t | pktccops_lock = { PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP , NULL, {1, 0} } |
static pthread_t | pktccops_thread = AST_PTHREADT_NULL |
static int | pktccopsdebug = 0 |
static int | pktcreload = 0 |
static uint16_t | t1 = 250 |
static uint16_t | t7 = 200 |
static uint16_t | t8 = 300 |
PacketCable COPS.
Definition in file res_pktccops.c.
#define AST_API_MODULE |
Definition at line 62 of file res_pktccops.c.
#define COPS_HEADER_SIZE 8 |
Definition at line 67 of file res_pktccops.c.
Referenced by cops_gate_cmd(), cops_getmsg(), cops_sendmsg(), and do_pktccops().
#define COPS_OBJECT_HEADER_SIZE 4 |
Definition at line 68 of file res_pktccops.c.
Referenced by cops_gate_cmd(), cops_getmsg(), and do_pktccops().
#define DEFAULT_COPS_PORT "2126" |
Definition at line 65 of file res_pktccops.c.
Referenced by load_pktccops_config().
#define GATE_INFO_OBJ_SIZE 24 |
Definition at line 71 of file res_pktccops.c.
Referenced by cops_gate_cmd().
#define GATE_SET_OBJ_SIZE 144 |
Definition at line 69 of file res_pktccops.c.
Referenced by cops_gate_cmd().
#define GATEID_OBJ_SIZE 8 |
Definition at line 70 of file res_pktccops.c.
Referenced by cops_gate_cmd().
#define PKTCCOPS_DESTROY_CURRENT_GATE |
Definition at line 692 of file res_pktccops.c.
Referenced by do_pktccops().
#define PKTCCOPS_SCOMMAND_GATE_ALLOC 1 |
Definition at line 73 of file res_pktccops.c.
#define PKTCCOPS_SCOMMAND_GATE_ALLOC_ACK 2 |
Definition at line 74 of file res_pktccops.c.
#define PKTCCOPS_SCOMMAND_GATE_ALLOC_ERR 3 |
Definition at line 75 of file res_pktccops.c.
#define PKTCCOPS_SCOMMAND_GATE_CLOSE 14 |
Definition at line 86 of file res_pktccops.c.
Referenced by do_pktccops().
#define PKTCCOPS_SCOMMAND_GATE_DELETE 10 |
Definition at line 82 of file res_pktccops.c.
Referenced by cops_construct_gate().
#define PKTCCOPS_SCOMMAND_GATE_DELETE_ACK 11 |
Definition at line 83 of file res_pktccops.c.
Referenced by do_pktccops().
#define PKTCCOPS_SCOMMAND_GATE_DELETE_ERR 12 |
Definition at line 84 of file res_pktccops.c.
#define PKTCCOPS_SCOMMAND_GATE_INFO 7 |
Definition at line 79 of file res_pktccops.c.
Referenced by cops_construct_gate().
#define PKTCCOPS_SCOMMAND_GATE_INFO_ACK 8 |
Definition at line 80 of file res_pktccops.c.
Referenced by do_pktccops().
#define PKTCCOPS_SCOMMAND_GATE_INFO_ERR 9 |
Definition at line 81 of file res_pktccops.c.
Referenced by do_pktccops().
#define PKTCCOPS_SCOMMAND_GATE_OPEN 13 |
Definition at line 85 of file res_pktccops.c.
Referenced by do_pktccops().
#define PKTCCOPS_SCOMMAND_GATE_SET 4 |
Definition at line 76 of file res_pktccops.c.
Referenced by cops_construct_gate().
#define PKTCCOPS_SCOMMAND_GATE_SET_ACK 5 |
Definition at line 77 of file res_pktccops.c.
Referenced by do_pktccops().
#define PKTCCOPS_SCOMMAND_GATE_SET_ERR 6 |
Definition at line 78 of file res_pktccops.c.
Referenced by do_pktccops().
#define SENDFLAGS MSG_NOSIGNAL | MSG_DONTWAIT |
Referenced by cops_sendmsg().
|
static |
Definition at line 1516 of file res_pktccops.c.
|
static |
Definition at line 1516 of file res_pktccops.c.
struct ast_module* AST_MODULE_SELF_SYM | ( | void | ) |
Definition at line 1516 of file res_pktccops.c.
struct cops_gate* AST_OPTIONAL_API_NAME() ast_pktccops_gate_alloc | ( | int | cmd, |
struct cops_gate * | gate, | ||
uint32_t | mta, | ||
uint32_t | actcount, | ||
float | bitrate, | ||
uint32_t | psize, | ||
uint32_t | ssip, | ||
uint16_t | ssport, | ||
int(*)(struct cops_gate *gate) | got_dq_gi, | ||
int(*)(struct cops_gate *gate) | gate_remove | ||
) |
Definition at line 468 of file res_pktccops.c.
References ast_debug, ast_log, cops_gate_cmd(), cops_trid, cops_gate::gate_remove, GATE_SET_HAVE_GATEID, cops_gate::gateid, cops_gate::got_dq_gi, LOG_WARNING, cops_gate::mta, NULL, and pktcreload.
Referenced by mgcp_alloc_pktcgate(), and mgcp_hangup().
|
static |
Definition at line 649 of file res_pktccops.c.
References ast_debug, ast_fd_set_flags, ast_log, LOG_WARNING, NULL, and result.
Referenced by do_pktccops().
|
static |
Definition at line 221 of file res_pktccops.c.
References ast_debug, gatespec::b, cops_constructgatespec(), gatespec::diffserv, gatespec::direction, gatespec::dstip, gatespec::dstp, gatespec::flags, ftoieeef(), GATE_DEL, GATE_INFO, GATE_SET_HAVE_GATEID, gatespec::m, gatespec::mm, gatespec::p, PKTCCOPS_SCOMMAND_GATE_DELETE, PKTCCOPS_SCOMMAND_GATE_INFO, PKTCCOPS_SCOMMAND_GATE_SET, gatespec::protocolid, gatespec::r, gatespec::rate, gatespec::s, gatespec::sessionclass, gatespec::srcip, gatespec::srcp, gatespec::t1, cops_cmts::t1, gatespec::t7, cops_cmts::t7, gatespec::t8, and cops_cmts::t8.
Referenced by cops_gate_cmd().
|
static |
Definition at line 182 of file res_pktccops.c.
References gatespec::b, gatespec::diffserv, gatespec::direction, gatespec::dstip, gatespec::dstp, gatespec::flags, gatespec::m, gatespec::mm, NULL, gatespec::p, gatespec::protocolid, gatespec::r, gatespec::rate, gatespec::s, gatespec::sessionclass, gatespec::srcip, gatespec::srcp, gatespec::t1, gatespec::t7, and gatespec::t8.
Referenced by cops_construct_gate().
|
static |
Definition at line 453 of file res_pktccops.c.
References ast_free, pktcobj::contents, copsmsg::msg, pktcobj::next, NULL, and copsmsg::object.
Referenced by cops_gate_cmd(), and do_pktccops().
|
static |
Definition at line 495 of file res_pktccops.c.
References ast_calloc, ast_debug, ast_free, AST_LIST_INSERT_HEAD, AST_LIST_LOCK, AST_LIST_TRAVERSE, AST_LIST_UNLOCK, ast_log, ast_malloc, copsmsg::clienttype, cops_gate::cmts, cops_ippool::cmts, pktcobj::cnum, pktcobj::contents, cops_construct_gate(), cops_freemsg(), COPS_HEADER_SIZE, COPS_OBJECT_HEADER_SIZE, cops_sendmsg(), pktcobj::ctype, GATE_ALLOC_PROGRESS, GATE_DEL, GATE_INFO, GATE_INFO_OBJ_SIZE, GATE_SET, GATE_SET_HAVE_GATEID, GATE_SET_OBJ_SIZE, cops_gate::gateid, GATEID_OBJ_SIZE, cops_cmts::handle, cops_gate::in_transaction, pktcobj::length, copsmsg::length, cops_ippool::list, LOG_WARNING, copsmsg::msg, cops_cmts::name, pktcobj::next, NULL, copsmsg::object, copsmsg::opcode, pktccopsdebug, cops_cmts::sfd, cops_ippool::start, stop, cops_gate::trid, and copsmsg::verflag.
Referenced by ast_pktccops_gate_alloc(), do_pktccops(), pktccops_gatedel(), and pktccops_gateset().
|
static |
Definition at line 323 of file res_pktccops.c.
References ast_debug, ast_malloc, buf, copsmsg::clienttype, pktcobj::cnum, pktcobj::contents, COPS_HEADER_SIZE, COPS_OBJECT_HEADER_SIZE, pktcobj::ctype, len(), pktcobj::length, copsmsg::length, copsmsg::msg, pktcobj::next, NULL, copsmsg::object, copsmsg::opcode, and copsmsg::verflag.
Referenced by do_pktccops().
|
static |
Definition at line 388 of file res_pktccops.c.
References ast_debug, ast_free, ast_log, ast_malloc, buf, copsmsg::clienttype, pktcobj::cnum, pktcobj::contents, COPS_HEADER_SIZE, pktcobj::ctype, errno, pktcobj::length, copsmsg::length, LOG_WARNING, copsmsg::msg, pktcobj::next, NULL, copsmsg::object, copsmsg::opcode, SENDFLAGS, and copsmsg::verflag.
Referenced by cops_gate_cmd(), and do_pktccops().
|
static |
Definition at line 699 of file res_pktccops.c.
References ast_debug, ast_free, AST_LIST_LOCK, AST_LIST_REMOVE_CURRENT, AST_LIST_TRAVERSE, AST_LIST_TRAVERSE_SAFE_BEGIN, AST_LIST_TRAVERSE_SAFE_END, AST_LIST_UNLOCK, ast_log, ast_malloc, ast_poll, ast_poll_fd_index(), ast_realloc, cops_gate::checked, copsmsg::clienttype, cops_gate::cmts, pktcobj::cnum, pktcobj::contents, cops_connect(), cops_freemsg(), cops_gate_cmd(), cops_getmsg(), COPS_HEADER_SIZE, COPS_OBJECT_HEADER_SIZE, cops_sendmsg(), cops_trid, pktcobj::ctype, cops_gate::deltimer, GATE_ALLOC_FAILED, GATE_ALLOCATED, GATE_CLOSED, GATE_CLOSED_ERR, GATE_DEL, GATE_DELETED, GATE_INFO, GATE_OPEN, cops_gate::gate_open, GATE_TIMEOUT, cops_gate::gateid, gateinfoperiod, gatetimeout, cops_gate::got_dq_gi, cops_cmts::handle, cops_cmts::host, cops_gate::in_transaction, cops_cmts::katimer, cops_cmts::keepalive, len(), pktcobj::length, copsmsg::length, load_pktccops_config(), LOG_WARNING, copsmsg::msg, cops_gate::mta, cops_cmts::name, cops_cmts::need_delete, pktcobj::next, NULL, copsmsg::object, copsmsg::opcode, PKTCCOPS_DESTROY_CURRENT_GATE, PKTCCOPS_SCOMMAND_GATE_CLOSE, PKTCCOPS_SCOMMAND_GATE_DELETE_ACK, PKTCCOPS_SCOMMAND_GATE_INFO_ACK, PKTCCOPS_SCOMMAND_GATE_INFO_ERR, PKTCCOPS_SCOMMAND_GATE_OPEN, PKTCCOPS_SCOMMAND_GATE_SET_ACK, PKTCCOPS_SCOMMAND_GATE_SET_ERR, pktccops_unregister_ippools(), pktcreload, cops_cmts::port, cops_cmts::sfd, cops_gate::state, cops_cmts::state, tmp(), cops_gate::trid, and copsmsg::verflag.
Referenced by restart_pktc_thread().
|
static |
Definition at line 175 of file res_pktccops.c.
Referenced by cops_construct_gate().
|
static |
Definition at line 1463 of file res_pktccops.c.
References ast_cli_register_multiple, AST_LIST_LOCK, AST_LIST_UNLOCK, AST_MODULE_LOAD_DECLINE, load_pktccops_config(), and restart_pktc_thread().
Referenced by reload_module().
|
static |
Definition at line 1022 of file res_pktccops.c.
References a, ast_calloc, ast_category_browse(), ast_config_destroy(), ast_config_load, ast_copy_string(), AST_LIST_INSERT_HEAD, AST_LIST_TRAVERSE, ast_log, ast_variable_browse(), b, c, cops_ippool::cmts, config, d, DEFAULT_COPS_PORT, gateinfoperiod, gatetimeout, host, cops_cmts::host, cops_cmts::keepalive, keepalive, LOG_WARNING, ast_variable::name, cops_cmts::name, cops_cmts::need_delete, ast_variable::next, NULL, pktccops_add_ippool(), cops_cmts::port, cops_cmts::sfd, cops_ippool::start, cops_cmts::state, cops_ippool::stop, cops_cmts::t1, t1, cops_cmts::t7, t7, cops_cmts::t8, t8, update(), and ast_variable::value.
Referenced by do_pktccops(), and load_module().
|
static |
Definition at line 1420 of file res_pktccops.c.
References AST_LIST_INSERT_HEAD, AST_LIST_LOCK, AST_LIST_UNLOCK, ast_log, ast_cli_entry::list, and LOG_WARNING.
Referenced by load_pktccops_config().
|
static |
Definition at line 1383 of file res_pktccops.c.
References ast_cli_args::argc, ast_cli_entry::args, ast_cli_args::argv, ast_cli(), CLI_GENERATE, CLI_INIT, CLI_SHOWUSAGE, CLI_SUCCESS, ast_cli_entry::command, ast_cli_args::fd, NULL, pktccopsdebug, and ast_cli_entry::usage.
|
static |
Definition at line 1266 of file res_pktccops.c.
References ast_cli_args::argc, ast_cli_args::argv, ast_cli(), AST_LIST_LOCK, AST_LIST_TRAVERSE, AST_LIST_UNLOCK, CLI_GENERATE, CLI_INIT, CLI_SHOWUSAGE, CLI_SUCCESS, cops_gate::cmts, ast_cli_entry::command, cops_gate_cmd(), cops_trid, ast_cli_args::fd, GATE_DEL, cops_gate::gateid, cops_cmts::list, cops_cmts::name, NULL, and ast_cli_entry::usage.
|
static |
Definition at line 1326 of file res_pktccops.c.
References ast_cli_args::argc, ast_cli_args::argv, ast_cli(), AST_LIST_LOCK, AST_LIST_TRAVERSE, AST_LIST_UNLOCK, CLI_GENERATE, CLI_INIT, CLI_SHOWUSAGE, CLI_SUCCESS, ast_cli_entry::command, cops_gate_cmd(), cops_trid, ast_cli_args::fd, GATE_SET, cops_cmts::list, cops_cmts::name, NULL, and ast_cli_entry::usage.
|
static |
Definition at line 1150 of file res_pktccops.c.
References ast_cli(), ast_copy_string(), AST_LIST_LOCK, AST_LIST_TRAVERSE, AST_LIST_UNLOCK, CLI_GENERATE, CLI_INIT, CLI_SUCCESS, ast_cli_entry::command, ast_cli_args::fd, cops_cmts::host, cops_cmts::katimer, cops_cmts::list, cops_cmts::name, NULL, cops_cmts::port, cops_cmts::state, and ast_cli_entry::usage.
|
static |
Definition at line 1187 of file res_pktccops.c.
References cops_gate::allocated, ast_cli(), ast_copy_string(), AST_LIST_LOCK, AST_LIST_TRAVERSE, AST_LIST_UNLOCK, cops_gate::checked, CLI_GENERATE, CLI_INIT, CLI_SUCCESS, cops_gate::cmts, ast_cli_entry::command, ast_cli_args::fd, GATE_ALLOC_FAILED, GATE_ALLOC_PROGRESS, GATE_ALLOCATED, GATE_CLOSED, GATE_CLOSED_ERR, GATE_DELETED, GATE_OPEN, cops_gate::gateid, cops_gate::in_transaction, cops_gate::mta, cops_cmts::name, NULL, cops_gate::state, and ast_cli_entry::usage.
|
static |
Definition at line 1235 of file res_pktccops.c.
References ast_cli(), AST_LIST_LOCK, AST_LIST_TRAVERSE, AST_LIST_UNLOCK, CLI_GENERATE, CLI_INIT, CLI_SUCCESS, cops_ippool::cmts, ast_cli_entry::command, ast_cli_args::fd, cops_ippool::list, cops_cmts::name, NULL, cops_ippool::start, cops_ippool::stop, stop, and ast_cli_entry::usage.
|
static |
Definition at line 1433 of file res_pktccops.c.
References ast_free, AST_LIST_LOCK, AST_LIST_REMOVE_HEAD, AST_LIST_UNLOCK, and cops_cmts::sfd.
Referenced by unload_module().
|
static |
Definition at line 1453 of file res_pktccops.c.
References ast_free, AST_LIST_LOCK, AST_LIST_REMOVE_HEAD, AST_LIST_UNLOCK, and cops_ippool::list.
Referenced by do_pktccops(), and unload_module().
|
static |
Definition at line 1500 of file res_pktccops.c.
References ast_log, AST_MODFLAG_GLOBAL_SYMBOLS, AST_MODULE_INFO(), AST_MODULE_SUPPORT_EXTENDED, ASTERISK_GPL_KEY, load_module(), LOG_NOTICE, pktcreload, reload(), and unload_module().
|
static |
Definition at line 993 of file res_pktccops.c.
References ast_log, ast_mutex_lock, ast_mutex_unlock, ast_pthread_create_background, AST_PTHREADT_NULL, AST_PTHREADT_STOP, do_pktccops(), LOG_ERROR, LOG_WARNING, NULL, pktccops_lock, and pktccops_thread.
Referenced by load_module().
|
static |
Definition at line 1478 of file res_pktccops.c.
References ast_cli_unregister_multiple(), ast_log, ast_mutex_lock, ast_mutex_unlock, AST_PTHREADT_NULL, AST_PTHREADT_STOP, LOG_ERROR, NULL, pktccops_lock, pktccops_thread, pktccops_unregister_cmtses(), and pktccops_unregister_ippools().
Referenced by reload_module().
|
static |
Definition at line 1516 of file res_pktccops.c.
|
static |
Definition at line 1516 of file res_pktccops.c.
|
static |
Definition at line 1411 of file res_pktccops.c.
struct cmts_list cmts_list = { .first = NULL, .last = NULL, .lock = { PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP , NULL, {1, 0} } , } |
|
static |
Definition at line 90 of file res_pktccops.c.
Referenced by ast_pktccops_gate_alloc(), do_pktccops(), pktccops_gatedel(), and pktccops_gateset().
struct gate_list gate_list = { .first = NULL, .last = NULL, .lock = { PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP , NULL, {1, 0} } , } |
|
static |
Definition at line 163 of file res_pktccops.c.
Referenced by do_pktccops(), and load_pktccops_config().
|
static |
Definition at line 164 of file res_pktccops.c.
Referenced by do_pktccops(), and load_pktccops_config().
struct ippool_list ippool_list = { .first = NULL, .last = NULL, .lock = { PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP , NULL, {1, 0} } , } |
|
static |
Definition at line 160 of file res_pktccops.c.
Referenced by check_rtp_timeout(), load_pktccops_config(), send_keepalive(), and sip_send_keepalive().
|
static |
Definition at line 88 of file res_pktccops.c.
Referenced by restart_pktc_thread(), and unload_module().
|
static |
Definition at line 89 of file res_pktccops.c.
Referenced by restart_pktc_thread(), and unload_module().
|
static |
Definition at line 161 of file res_pktccops.c.
Referenced by cops_gate_cmd(), and pktccops_debug().
|
static |
Definition at line 162 of file res_pktccops.c.
Referenced by ast_pktccops_gate_alloc(), do_pktccops(), and reload_module().
|
static |
Definition at line 157 of file res_pktccops.c.
Referenced by create_match_char_tree(), destroy_test_container(), differ_by_repeat(), is_prefix(), load_pktccops_config(), make_test1(), print_list(), and print_list_backwards().
|
static |
Definition at line 158 of file res_pktccops.c.
Referenced by load_pktccops_config().
|
static |
Definition at line 159 of file res_pktccops.c.
Referenced by load_pktccops_config().