[asterisk-commits] dlee: branch dlee/ASTERISK-22036 r396939 - in /team/dlee/ASTERISK-22036: ./ a...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Mon Aug 19 13:26:23 CDT 2013
Author: dlee
Date: Mon Aug 19 13:26:19 2013
New Revision: 396939
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=396939
Log:
Merged revisions 396734-396930 from http://svn.asterisk.org/svn/asterisk/trunk
Modified:
team/dlee/ASTERISK-22036/ (props changed)
team/dlee/ASTERISK-22036/apps/app_queue.c
team/dlee/ASTERISK-22036/apps/app_voicemail.c
team/dlee/ASTERISK-22036/apps/confbridge/conf_config_parser.c
team/dlee/ASTERISK-22036/bridges/bridge_softmix.c
team/dlee/ASTERISK-22036/cel/cel_custom.c
team/dlee/ASTERISK-22036/cel/cel_manager.c
team/dlee/ASTERISK-22036/cel/cel_odbc.c
team/dlee/ASTERISK-22036/cel/cel_pgsql.c
team/dlee/ASTERISK-22036/cel/cel_radius.c
team/dlee/ASTERISK-22036/cel/cel_sqlite3_custom.c
team/dlee/ASTERISK-22036/cel/cel_tds.c
team/dlee/ASTERISK-22036/channels/chan_dahdi.c
team/dlee/ASTERISK-22036/channels/chan_iax2.c
team/dlee/ASTERISK-22036/channels/chan_mgcp.c
team/dlee/ASTERISK-22036/channels/chan_sip.c
team/dlee/ASTERISK-22036/channels/chan_skinny.c
team/dlee/ASTERISK-22036/channels/chan_unistim.c
team/dlee/ASTERISK-22036/channels/chan_vpb.cc
team/dlee/ASTERISK-22036/channels/sig_analog.c
team/dlee/ASTERISK-22036/channels/sig_pri.c
team/dlee/ASTERISK-22036/channels/sig_pri.h
team/dlee/ASTERISK-22036/channels/sip/include/sip.h
team/dlee/ASTERISK-22036/configs/features.conf.sample
team/dlee/ASTERISK-22036/funcs/func_presencestate.c
team/dlee/ASTERISK-22036/include/asterisk/_private.h
team/dlee/ASTERISK-22036/include/asterisk/astobj2.h
team/dlee/ASTERISK-22036/include/asterisk/bridge.h
team/dlee/ASTERISK-22036/include/asterisk/bridge_channel.h
team/dlee/ASTERISK-22036/include/asterisk/bridge_channel_internal.h
team/dlee/ASTERISK-22036/include/asterisk/cel.h
team/dlee/ASTERISK-22036/include/asterisk/channel.h
team/dlee/ASTERISK-22036/include/asterisk/devicestate.h
team/dlee/ASTERISK-22036/include/asterisk/doxygen/architecture.h
team/dlee/ASTERISK-22036/include/asterisk/event.h
team/dlee/ASTERISK-22036/include/asterisk/event_defs.h
team/dlee/ASTERISK-22036/include/asterisk/parking.h
team/dlee/ASTERISK-22036/include/asterisk/security_events_defs.h
team/dlee/ASTERISK-22036/include/asterisk/utils.h
team/dlee/ASTERISK-22036/main/asterisk.c
team/dlee/ASTERISK-22036/main/bridge.c
team/dlee/ASTERISK-22036/main/bridge_channel.c
team/dlee/ASTERISK-22036/main/ccss.c
team/dlee/ASTERISK-22036/main/cdr.c
team/dlee/ASTERISK-22036/main/cel.c
team/dlee/ASTERISK-22036/main/cli.c
team/dlee/ASTERISK-22036/main/config_options.c
team/dlee/ASTERISK-22036/main/data.c
team/dlee/ASTERISK-22036/main/db.c
team/dlee/ASTERISK-22036/main/devicestate.c
team/dlee/ASTERISK-22036/main/event.c
team/dlee/ASTERISK-22036/main/features.c
team/dlee/ASTERISK-22036/main/file.c
team/dlee/ASTERISK-22036/main/format.c
team/dlee/ASTERISK-22036/main/hashtab.c
team/dlee/ASTERISK-22036/main/indications.c
team/dlee/ASTERISK-22036/main/loader.c
team/dlee/ASTERISK-22036/main/manager.c
team/dlee/ASTERISK-22036/main/message.c
team/dlee/ASTERISK-22036/main/parking.c
team/dlee/ASTERISK-22036/main/pbx.c
team/dlee/ASTERISK-22036/main/pickup.c
team/dlee/ASTERISK-22036/main/presencestate.c
team/dlee/ASTERISK-22036/main/rtp_engine.c
team/dlee/ASTERISK-22036/main/security_events.c
team/dlee/ASTERISK-22036/main/sounds_index.c
team/dlee/ASTERISK-22036/main/stasis.c
team/dlee/ASTERISK-22036/main/stasis_cache.c
team/dlee/ASTERISK-22036/main/stasis_cache_pattern.c
team/dlee/ASTERISK-22036/main/stasis_channels.c
team/dlee/ASTERISK-22036/main/xmldoc.c
team/dlee/ASTERISK-22036/res/parking/parking_applications.c
team/dlee/ASTERISK-22036/res/parking/parking_bridge_features.c
team/dlee/ASTERISK-22036/res/parking/parking_manager.c
team/dlee/ASTERISK-22036/res/parking/parking_tests.c
team/dlee/ASTERISK-22036/res/parking/parking_ui.c
team/dlee/ASTERISK-22036/res/parking/res_parking.h
team/dlee/ASTERISK-22036/res/res_corosync.c
team/dlee/ASTERISK-22036/res/res_jabber.c
team/dlee/ASTERISK-22036/res/res_parking.c
team/dlee/ASTERISK-22036/res/res_pjsip.c
team/dlee/ASTERISK-22036/res/res_rtp_asterisk.c
team/dlee/ASTERISK-22036/res/res_security_log.c
team/dlee/ASTERISK-22036/res/res_xmpp.c
team/dlee/ASTERISK-22036/tests/test_abstract_jb.c
team/dlee/ASTERISK-22036/tests/test_cdr.c
team/dlee/ASTERISK-22036/tests/test_cel.c
team/dlee/ASTERISK-22036/tests/test_event.c
team/dlee/ASTERISK-22036/tests/test_jitterbuf.c
team/dlee/ASTERISK-22036/tests/test_stasis.c
team/dlee/ASTERISK-22036/tests/test_voicemail_api.c
Propchange: team/dlee/ASTERISK-22036/
------------------------------------------------------------------------------
Binary property 'branch-11-merged' - no diff available.
Propchange: team/dlee/ASTERISK-22036/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Mon Aug 19 13:26:19 2013
@@ -1,1 +1,1 @@
-/trunk:1-396732
+/trunk:1-396938
Modified: team/dlee/ASTERISK-22036/apps/app_queue.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/apps/app_queue.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/apps/app_queue.c (original)
+++ team/dlee/ASTERISK-22036/apps/app_queue.c Mon Aug 19 13:26:19 2013
@@ -96,7 +96,6 @@
#include "asterisk/astdb.h"
#include "asterisk/devicestate.h"
#include "asterisk/stringfields.h"
-#include "asterisk/event.h"
#include "asterisk/astobj2.h"
#include "asterisk/strings.h"
#include "asterisk/global_datastores.h"
@@ -2060,7 +2059,8 @@
}
/*!
- * \internal \brief Determine if a queue member is available
+ * \internal
+ * \brief Determine if a queue member is available
* \retval 1 if the member is available
* \retval 0 if the member is not available
*/
Modified: team/dlee/ASTERISK-22036/apps/app_voicemail.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/apps/app_voicemail.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/apps/app_voicemail.c (original)
+++ team/dlee/ASTERISK-22036/apps/app_voicemail.c Mon Aug 19 13:26:19 2013
@@ -131,7 +131,6 @@
#include "asterisk/strings.h"
#include "asterisk/smdi.h"
#include "asterisk/astobj2.h"
-#include "asterisk/event.h"
#include "asterisk/taskprocessor.h"
#include "asterisk/test.h"
Modified: team/dlee/ASTERISK-22036/apps/confbridge/conf_config_parser.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/apps/confbridge/conf_config_parser.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/apps/confbridge/conf_config_parser.c (original)
+++ team/dlee/ASTERISK-22036/apps/confbridge/conf_config_parser.c Mon Aug 19 13:26:19 2013
@@ -1922,7 +1922,7 @@
/* This option should only be used with the CONFBRIDGE dialplan function */
aco_option_register_custom(&cfg_info, "template", ACO_EXACT, user_types, NULL, user_template_handler, 0);
-/* BUGBUG need a user supplied bridge merge_priority to merge ConfBridges (default = 1, range 1-INT_MAX) */
+/* XXX ASTERISK-21271 need a user supplied bridge merge_priority to merge ConfBridges (default = 1, range 1-INT_MAX) */
/* Bridge options */
aco_option_register(&cfg_info, "type", ACO_EXACT, bridge_types, NULL, OPT_NOOP_T, 0, 0);
aco_option_register(&cfg_info, "jitterbuffer", ACO_EXACT, bridge_types, "no", OPT_BOOLFLAG_T, 1, FLDSET(struct bridge_profile, flags), USER_OPT_JITTERBUFFER);
Modified: team/dlee/ASTERISK-22036/bridges/bridge_softmix.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/bridges/bridge_softmix.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/bridges/bridge_softmix.c (original)
+++ team/dlee/ASTERISK-22036/bridges/bridge_softmix.c Mon Aug 19 13:26:19 2013
@@ -594,8 +594,10 @@
*/
static int softmix_bridge_write_control(struct ast_bridge *bridge, struct ast_bridge_channel *bridge_channel, struct ast_frame *frame)
{
-/* BUGBUG need to look at channel roles to determine what to do with control frame. */
- /*! \todo BUGBUG softmix_bridge_write_control() not written */
+ /*
+ * XXX Softmix needs to use channel roles to determine what to
+ * do with control frames.
+ */
return 0;
}
@@ -622,6 +624,11 @@
return 0;
}
+ /*
+ * XXX Softmix needs to use channel roles to determine who gets
+ * what frame. Possible roles: announcer, recorder, agent,
+ * supervisor.
+ */
switch (frame->frametype) {
case AST_FRAME_NULL:
/* "Accept" the frame and discard it. */
@@ -820,6 +827,10 @@
goto softmix_cleanup;
}
+ /*
+ * XXX Softmix needs to use channel roles to determine who gets
+ * what audio mixed.
+ */
while (!softmix_data->stop && bridge->num_active) {
struct ast_bridge_channel *bridge_channel;
int timeout = -1;
Modified: team/dlee/ASTERISK-22036/cel/cel_custom.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/cel/cel_custom.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/cel/cel_custom.c (original)
+++ team/dlee/ASTERISK-22036/cel/cel_custom.c Mon Aug 19 13:26:19 2013
@@ -64,7 +64,7 @@
AST_RWLIST_ENTRY(cel_config) list;
};
-static struct ast_event_sub *event_sub = NULL;
+#define CUSTOM_BACKEND_NAME "CEL Custom CSV Logging"
static AST_RWLIST_HEAD_STATIC(sinks, cel_config);
@@ -116,7 +116,7 @@
return res;
}
-static void custom_log(const struct ast_event *event, void *userdata)
+static void custom_log(struct ast_event *event)
{
struct ast_channel *dummy;
struct ast_str *str;
@@ -167,19 +167,15 @@
static int unload_module(void)
{
- if (event_sub) {
- event_sub = ast_event_unsubscribe(event_sub);
- }
if (AST_RWLIST_WRLOCK(&sinks)) {
- event_sub = ast_event_subscribe(AST_EVENT_CEL, custom_log, "CEL Custom CSV Logging",
- NULL, AST_EVENT_IE_END);
ast_log(LOG_ERROR, "Unable to lock sink list. Unload failed.\n");
return -1;
}
free_config();
AST_RWLIST_UNLOCK(&sinks);
+ ast_cel_backend_unregister(CUSTOM_BACKEND_NAME);
return 0;
}
@@ -193,8 +189,9 @@
load_config();
AST_RWLIST_UNLOCK(&sinks);
- event_sub = ast_event_subscribe(AST_EVENT_CEL, custom_log, "CEL Custom CSV Logging",
- NULL, AST_EVENT_IE_END);
+ if (ast_cel_backend_register(CUSTOM_BACKEND_NAME, custom_log)) {
+ return AST_MODULE_LOAD_FAILURE;
+ }
return AST_MODULE_LOAD_SUCCESS;
}
Modified: team/dlee/ASTERISK-22036/cel/cel_manager.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/cel/cel_manager.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/cel/cel_manager.c (original)
+++ team/dlee/ASTERISK-22036/cel/cel_manager.c Mon Aug 19 13:26:19 2013
@@ -57,12 +57,12 @@
/*! \brief show_user_def is off by default */
#define CEL_SHOW_USERDEF_DEFAULT 0
+#define MANAGER_BACKEND_NAME "Manager Event Logging"
+
/*! TRUE if we should set the EventName header to USER_DEFINED on user events. */
static unsigned char cel_show_user_def;
-static struct ast_event_sub *event_sub;
-
-static void manager_log(const struct ast_event *event, void *userdata)
+static void manager_log(struct ast_event *event)
{
struct ast_tm timeresult;
char start_time[80] = "";
@@ -180,12 +180,9 @@
cel_show_user_def = new_cel_show_user_def;
if (enablecel && !newenablecel) {
- if (event_sub) {
- event_sub = ast_event_unsubscribe(event_sub);
- }
+ ast_cel_backend_unregister(MANAGER_BACKEND_NAME);
} else if (!enablecel && newenablecel) {
- event_sub = ast_event_subscribe(AST_EVENT_CEL, manager_log, "Manager Event Logging", NULL, AST_EVENT_IE_END);
- if (!event_sub) {
+ if (ast_cel_backend_register(MANAGER_BACKEND_NAME, manager_log)) {
ast_log(LOG_ERROR, "Unable to register Asterisk Call Manager CEL handling\n");
}
}
@@ -196,9 +193,7 @@
static int unload_module(void)
{
- if (event_sub) {
- event_sub = ast_event_unsubscribe(event_sub);
- }
+ ast_cel_backend_unregister(MANAGER_BACKEND_NAME);
return 0;
}
Modified: team/dlee/ASTERISK-22036/cel/cel_odbc.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/cel/cel_odbc.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/cel/cel_odbc.c (original)
+++ team/dlee/ASTERISK-22036/cel/cel_odbc.c Mon Aug 19 13:26:19 2013
@@ -51,7 +51,8 @@
#include "asterisk/module.h"
#define CONFIG "cel_odbc.conf"
-static struct ast_event_sub *event_sub = NULL;
+
+#define ODBC_BACKEND_NAME "ODBC CEL backend"
/*! \brief show_user_def is off by default */
#define CEL_SHOW_USERDEF_DEFAULT 0
@@ -367,7 +368,7 @@
} \
} while (0)
-static void odbc_log(const struct ast_event *event, void *userdata)
+static void odbc_log(struct ast_event *event)
{
struct tables *tableptr;
struct columns *entry;
@@ -789,18 +790,12 @@
static int unload_module(void)
{
- if (event_sub) {
- event_sub = ast_event_unsubscribe(event_sub);
- }
if (AST_RWLIST_WRLOCK(&odbc_tables)) {
- event_sub = ast_event_subscribe(AST_EVENT_CEL, odbc_log, "ODBC CEL backend", NULL, AST_EVENT_IE_END);
- if (!event_sub) {
- ast_log(LOG_ERROR, "Unable to subscribe to CEL events\n");
- }
ast_log(LOG_ERROR, "Unable to lock column list. Unload failed.\n");
return -1;
}
+ ast_cel_backend_unregister(ODBC_BACKEND_NAME);
free_config();
AST_RWLIST_UNLOCK(&odbc_tables);
AST_RWLIST_HEAD_DESTROY(&odbc_tables);
@@ -814,13 +809,13 @@
if (AST_RWLIST_WRLOCK(&odbc_tables)) {
ast_log(LOG_ERROR, "Unable to lock column list. Load failed.\n");
- return 0;
+ return AST_MODULE_LOAD_FAILURE;
}
load_config();
AST_RWLIST_UNLOCK(&odbc_tables);
- event_sub = ast_event_subscribe(AST_EVENT_CEL, odbc_log, "ODBC CEL backend", NULL, AST_EVENT_IE_END);
- if (!event_sub) {
+ if (ast_cel_backend_register(ODBC_BACKEND_NAME, odbc_log)) {
ast_log(LOG_ERROR, "Unable to subscribe to CEL events\n");
+ return AST_MODULE_LOAD_FAILURE;
}
return AST_MODULE_LOAD_SUCCESS;
}
@@ -829,7 +824,7 @@
{
if (AST_RWLIST_WRLOCK(&odbc_tables)) {
ast_log(LOG_ERROR, "Unable to lock column list. Reload failed.\n");
- return -1;
+ return AST_MODULE_LOAD_FAILURE;
}
free_config();
@@ -838,7 +833,7 @@
return AST_MODULE_LOAD_SUCCESS;
}
-AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_LOAD_ORDER, "ODBC CEL backend",
+AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_LOAD_ORDER, ODBC_BACKEND_NAME,
.load = load_module,
.unload = unload_module,
.reload = reload,
Modified: team/dlee/ASTERISK-22036/cel/cel_pgsql.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/cel/cel_pgsql.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/cel/cel_pgsql.c (original)
+++ team/dlee/ASTERISK-22036/cel/cel_pgsql.c Mon Aug 19 13:26:19 2013
@@ -58,6 +58,8 @@
#define DATE_FORMAT "%Y-%m-%d %T.%6q"
+#define PGSQL_BACKEND_NAME "CEL PGSQL backend"
+
static char *config = "cel_pgsql.conf";
static char *pghostname = NULL, *pgdbname = NULL, *pgdbuser = NULL, *pgpassword = NULL, *pgdbport = NULL, *table = NULL;
static int connected = 0;
@@ -73,7 +75,6 @@
static PGconn *conn = NULL;
static PGresult *result = NULL;
-static struct ast_event_sub *event_sub = NULL;
struct columns {
char *name;
@@ -113,7 +114,7 @@
} \
} while (0)
-static void pgsql_log(const struct ast_event *event, void *userdata)
+static void pgsql_log(struct ast_event *event)
{
struct ast_tm tm;
char timestr[128];
@@ -346,10 +347,7 @@
{
struct columns *current;
AST_RWLIST_WRLOCK(&psql_columns);
- if (event_sub) {
- event_sub = ast_event_unsubscribe(event_sub);
- event_sub = NULL;
- }
+ ast_cel_backend_unregister(PGSQL_BACKEND_NAME);
if (conn) {
PQfinish(conn);
conn = NULL;
@@ -561,9 +559,7 @@
process_my_load_module(cfg);
ast_config_destroy(cfg);
- event_sub = ast_event_subscribe(AST_EVENT_CEL, pgsql_log, "CEL PGSQL backend", NULL, AST_EVENT_IE_END);
-
- if (!event_sub) {
+ if (ast_cel_backend_register(PGSQL_BACKEND_NAME, pgsql_log)) {
ast_log(LOG_WARNING, "Unable to subscribe to CEL events for pgsql\n");
return AST_MODULE_LOAD_DECLINE;
}
Modified: team/dlee/ASTERISK-22036/cel/cel_radius.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/cel/cel_radius.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/cel/cel_radius.c (original)
+++ team/dlee/ASTERISK-22036/cel/cel_radius.c Mon Aug 19 13:26:19 2013
@@ -84,7 +84,8 @@
static struct ast_flags global_flags = { RADIUS_FLAG_USEGMTIME | RADIUS_FLAG_LOGUNIQUEID | RADIUS_FLAG_LOGUSERFIELD };
static rc_handle *rh = NULL;
-static struct ast_event_sub *event_sub = NULL;
+
+#define RADIUS_BACKEND_NAME "CEL Radius Logging"
#define ADD_VENDOR_CODE(x,y) (rc_avpair_add(rh, send, x, &y, strlen(y), VENDOR_CODE))
@@ -174,7 +175,7 @@
return 0;
}
-static void radius_log(const struct ast_event *event, void *userdata)
+static void radius_log(struct ast_event *event)
{
int result = ERROR_RC;
VALUE_PAIR *send = NULL;
@@ -204,9 +205,7 @@
static int unload_module(void)
{
- if (event_sub) {
- event_sub = ast_event_unsubscribe(event_sub);
- }
+ ast_cel_backend_unregister(RADIUS_BACKEND_NAME);
if (rh) {
rc_destroy(rh);
rh = NULL;
@@ -256,8 +255,7 @@
return AST_MODULE_LOAD_DECLINE;
}
- event_sub = ast_event_subscribe(AST_EVENT_CEL, radius_log, "CEL Radius Logging", NULL, AST_EVENT_IE_END);
- if (!event_sub) {
+ if (ast_cel_backend_register(RADIUS_BACKEND_NAME, radius_log)) {
rc_destroy(rh);
rh = NULL;
return AST_MODULE_LOAD_DECLINE;
Modified: team/dlee/ASTERISK-22036/cel/cel_sqlite3_custom.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/cel/cel_sqlite3_custom.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/cel/cel_sqlite3_custom.c (original)
+++ team/dlee/ASTERISK-22036/cel/cel_sqlite3_custom.c Mon Aug 19 13:26:19 2013
@@ -57,6 +57,8 @@
#include "asterisk/options.h"
#include "asterisk/stringfields.h"
+#define SQLITE_BACKEND_NAME "CEL sqlite3 custom backend"
+
AST_MUTEX_DEFINE_STATIC(lock);
static const char config_file[] = "cel_sqlite3_custom.conf";
@@ -69,7 +71,6 @@
* \bug Handling of this var is crash prone on reloads
*/
static char *columns;
-static struct ast_event_sub *event_sub = NULL;
struct values {
char *expression;
@@ -229,7 +230,7 @@
}
}
-static void write_cel(const struct ast_event *event, void *userdata)
+static void write_cel(struct ast_event *event)
{
char *error = NULL;
char *sql = NULL;
@@ -293,9 +294,7 @@
static int unload_module(void)
{
- if (event_sub) {
- event_sub = ast_event_unsubscribe(event_sub);
- }
+ ast_cel_backend_unregister(SQLITE_BACKEND_NAME);
free_config();
@@ -339,8 +338,7 @@
}
}
- event_sub = ast_event_subscribe(AST_EVENT_CEL, write_cel, "CEL sqlite3 custom backend", NULL, AST_EVENT_IE_END);
- if (!event_sub) {
+ if (ast_cel_backend_register(SQLITE_BACKEND_NAME, write_cel)) {
ast_log(LOG_ERROR, "Unable to register custom SQLite3 CEL handling\n");
free_config();
return AST_MODULE_LOAD_DECLINE;
Modified: team/dlee/ASTERISK-22036/cel/cel_tds.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/cel/cel_tds.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/cel/cel_tds.c (original)
+++ team/dlee/ASTERISK-22036/cel/cel_tds.c Mon Aug 19 13:26:19 2013
@@ -81,9 +81,9 @@
#define DATE_FORMAT "%Y/%m/%d %T"
+#define TDS_BACKEND_NAME "CEL TDS logging backend"
+
static char *config = "cel_tds.conf";
-
-static struct ast_event_sub *event_sub = NULL;
struct cel_tds_config {
AST_DECLARE_STRING_FIELDS(
@@ -112,7 +112,7 @@
static int mssql_connect(void);
static int mssql_disconnect(void);
-static void tds_log(const struct ast_event *event, void *userdata)
+static void tds_log(struct ast_event *event)
{
char start[80];
char *accountcode_ai, *clidnum_ai, *exten_ai, *context_ai, *clid_ai, *channel_ai, *app_ai, *appdata_ai, *uniqueid_ai, *linkedid_ai, *cidani_ai, *cidrdnis_ai, *ciddnid_ai, *peer_ai, *userfield_ai;
@@ -397,9 +397,7 @@
static int tds_unload_module(void)
{
- if (event_sub) {
- event_sub = ast_event_unsubscribe(event_sub);
- }
+ ast_cel_backend_unregister(TDS_BACKEND_NAME);
if (settings) {
ast_mutex_lock(&tds_lock);
@@ -561,8 +559,7 @@
}
/* Register MSSQL CEL handler */
- event_sub = ast_event_subscribe(AST_EVENT_CEL, tds_log, "CEL TDS logging backend", NULL, AST_EVENT_IE_END);
- if (!event_sub) {
+ if (ast_cel_backend_register(TDS_BACKEND_NAME, tds_log)) {
ast_log(LOG_ERROR, "Unable to register MSSQL CEL handling\n");
ast_string_field_free_memory(settings);
ast_free(settings);
Modified: team/dlee/ASTERISK-22036/channels/chan_dahdi.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/channels/chan_dahdi.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/channels/chan_dahdi.c (original)
+++ team/dlee/ASTERISK-22036/channels/chan_dahdi.c Mon Aug 19 13:26:19 2013
@@ -119,7 +119,6 @@
#include "asterisk/abstract_jb.h"
#include "asterisk/smdi.h"
#include "asterisk/astobj.h"
-#include "asterisk/event.h"
#include "asterisk/devicestate.h"
#include "asterisk/paths.h"
#include "asterisk/ccss.h"
@@ -9246,10 +9245,6 @@
int idx;
struct ast_format tmpfmt;
RAII_VAR(struct ast_features_pickup_config *, pickup_cfg, NULL, ao2_cleanup);
- RAII_VAR(struct ast_parking_bridge_feature_fn_table *, parking_provider,
- ast_parking_get_bridge_features(),
- ao2_cleanup);
- int is_exten_parking;
const char *pickupexten;
ast_mutex_lock(&ss_thread_lock);
@@ -9563,6 +9558,8 @@
if (p->subs[SUB_THREEWAY].owner)
timeout = 999999;
while (len < AST_MAX_EXTENSION-1) {
+ int is_exten_parking = 0;
+
/* Read digit unless it's supposed to be immediate, in which case the
only answer is 's' */
if (p->immediate)
@@ -9585,7 +9582,9 @@
} else {
tone_zone_play_tone(p->subs[idx].dfd, DAHDI_TONE_DIALTONE);
}
- is_exten_parking = (parking_provider ? parking_provider->parking_is_exten_park(ast_channel_context(chan), exten) : 0);
+ if (ast_parking_provider_registered()) {
+ is_exten_parking = ast_parking_is_exten_park(ast_channel_context(chan), exten);
+ }
if (ast_exists_extension(chan, ast_channel_context(chan), exten, 1, p->cid_num) && !is_exten_parking) {
if (!res || !ast_matchmore_extension(chan, ast_channel_context(chan), exten, 1, p->cid_num)) {
if (getforward) {
@@ -9730,7 +9729,7 @@
ast_channel_lock(chan);
bridge_channel = ast_channel_get_bridge_channel(chan);
ast_channel_unlock(chan);
- if (bridge_channel && !parking_provider->parking_blind_transfer_park(bridge_channel, ast_channel_context(chan), exten)) {
+ if (bridge_channel && !ast_parking_blind_transfer_park(bridge_channel, ast_channel_context(chan), exten)) {
ast_verb(3, "Parking call to '%s'\n", ast_channel_name(chan));
}
break;
Modified: team/dlee/ASTERISK-22036/channels/chan_iax2.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/channels/chan_iax2.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/channels/chan_iax2.c (original)
+++ team/dlee/ASTERISK-22036/channels/chan_iax2.c Mon Aug 19 13:26:19 2013
@@ -105,7 +105,6 @@
#include "asterisk/netsock.h"
#include "asterisk/stringfields.h"
#include "asterisk/linkedlists.h"
-#include "asterisk/event.h"
#include "asterisk/astobj2.h"
#include "asterisk/timing.h"
#include "asterisk/taskprocessor.h"
@@ -5513,8 +5512,7 @@
if ((f->frametype == AST_FRAME_CONTROL)) {
if (f->subclass.integer == AST_CONTROL_PVT_CAUSE_CODE) {
ast_channel_hangupcause_hash_set(other, f->data.ptr, f->datalen);
- } else if (!(flags & AST_BRIDGE_IGNORE_SIGS)
- && (f->subclass.integer != AST_CONTROL_SRCUPDATE)) {
+ } else if (f->subclass.integer != AST_CONTROL_SRCUPDATE) {
*fo = f;
*rc = who;
res = AST_BRIDGE_COMPLETE;
Modified: team/dlee/ASTERISK-22036/channels/chan_mgcp.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/channels/chan_mgcp.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/channels/chan_mgcp.c (original)
+++ team/dlee/ASTERISK-22036/channels/chan_mgcp.c Mon Aug 19 13:26:19 2013
@@ -79,7 +79,6 @@
#include "asterisk/devicestate.h"
#include "asterisk/stringfields.h"
#include "asterisk/abstract_jb.h"
-#include "asterisk/event.h"
#include "asterisk/chanvars.h"
#include "asterisk/pktccops.h"
#include "asterisk/stasis.h"
@@ -2981,9 +2980,6 @@
int getforward = 0;
int loop_pause = 100;
RAII_VAR(struct ast_features_pickup_config *, pickup_cfg, NULL, ao2_cleanup);
- RAII_VAR(struct ast_parking_bridge_feature_fn_table *, parking_provider,
- ast_parking_get_bridge_features(),
- ao2_cleanup);
const char *pickupexten;
len = strlen(p->dtmf_buf);
@@ -3152,7 +3148,7 @@
getforward = 0;
memset(p->dtmf_buf, 0, sizeof(p->dtmf_buf));
len = 0;
- } else if (parking_provider && parking_provider->parking_is_exten_park(ast_channel_context(chan), p->dtmf_buf) &&
+ } else if (ast_parking_provider_registered() && ast_parking_is_exten_park(ast_channel_context(chan), p->dtmf_buf) &&
sub->next->owner) {
RAII_VAR(struct ast_bridge_channel *, bridge_channel, NULL, ao2_cleanup);
/* This is a three way call, the main call being a real channel,
@@ -3160,7 +3156,7 @@
ast_channel_lock(chan);
bridge_channel = ast_channel_get_bridge_channel(chan);
ast_channel_unlock(chan);
- if (bridge_channel && !parking_provider->parking_blind_transfer_park(bridge_channel, ast_channel_context(chan), p->dtmf_buf)) {
+ if (bridge_channel && !ast_parking_blind_transfer_park(bridge_channel, ast_channel_context(chan), p->dtmf_buf)) {
ast_verb(3, "Parking call to '%s'\n", ast_channel_name(chan));
}
break;
Modified: team/dlee/ASTERISK-22036/channels/chan_sip.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/channels/chan_sip.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/channels/chan_sip.c (original)
+++ team/dlee/ASTERISK-22036/channels/chan_sip.c Mon Aug 19 13:26:19 2013
@@ -276,7 +276,6 @@
#include "asterisk/threadstorage.h"
#include "asterisk/translate.h"
#include "asterisk/ast_version.h"
-#include "asterisk/event.h"
#include "asterisk/data.h"
#include "asterisk/aoc.h"
#include "asterisk/message.h"
@@ -7724,7 +7723,10 @@
return res;
}
-/*! \internal \brief Create and initialize UDPTL for the specified dialog
+/*!
+ * \internal
+ * \brief Create and initialize UDPTL for the specified dialog
+ *
* \param p SIP private structure to create UDPTL object for
* \pre p is locked
* \pre p->owner is locked
@@ -14443,7 +14445,10 @@
return 0;
}
-/*! \internal \brief Find the channel that is causing the RINGING update, ref'd */
+/*!
+ * \internal
+ * \brief Find the channel that is causing the RINGING update, ref'd
+ */
static struct ast_channel *find_ringing_channel(struct ao2_container *device_state_info, struct sip_pvt *p)
{
struct ao2_iterator citer;
@@ -16386,7 +16391,10 @@
}
}
-/*! \internal \brief Create a new route
+/*!
+ * \internal
+ * \brief Create a new route
+ *
* \retval NULL on error
* \retval sip_route on success
*/
@@ -16415,7 +16423,10 @@
return route;
}
-/*! \internal \brief copy route-set
+/*!
+ * \internal
+ * \brief copy route-set
+ *
* \retval non-zero on failure
* \retval 0 on success
*/
@@ -17045,7 +17056,9 @@
ast_sockaddr_split_hostport(*hostport, hostport, &dont_care, PARSE_PORT_IGNORE);
}
-/*! \internal \brief Helper function to update a peer's lastmsgssent value
+/*!
+ * \internal
+ * \brief Helper function to update a peer's lastmsgssent value
*/
static void update_peer_lastmsgssent(struct sip_peer *peer, int value, int locked)
{
@@ -17059,13 +17072,16 @@
}
-/*! \brief Verify registration of user
- - Registration is done in several steps, first a REGISTER without auth
- to get a challenge (nonce) then a second one with auth
- - Registration requests are only matched with peers that are marked as "dynamic"
+/*!
+ * \brief Verify registration of user
+ *
+ * \details
+ * - Registration is done in several steps, first a REGISTER without auth
+ * to get a challenge (nonce) then a second one with auth
+ * - Registration requests are only matched with peers that are marked as "dynamic"
*/
static enum check_auth_result register_verify(struct sip_pvt *p, struct ast_sockaddr *addr,
- struct sip_request *req, const char *uri)
+ struct sip_request *req, const char *uri)
{
enum check_auth_result res = AUTH_NOT_FOUND;
struct sip_peer *peer;
@@ -27207,7 +27223,10 @@
return handler_result;
}
-/*! \internal \brief Subscribe to MWI events for the specified peer
+/*!
+ * \internal
+ * \brief Subscribe to MWI events for the specified peer
+ *
* \note The peer cannot be locked during this method. sip_send_mwi_peer will
* attempt to lock the peer after the event subscription lock is held; if the peer is locked during
* this method then we will attempt to lock the event subscription lock but after the peer, creating
Modified: team/dlee/ASTERISK-22036/channels/chan_skinny.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/channels/chan_skinny.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/channels/chan_skinny.c (original)
+++ team/dlee/ASTERISK-22036/channels/chan_skinny.c Mon Aug 19 13:26:19 2013
@@ -77,7 +77,6 @@
#include "asterisk/abstract_jb.h"
#include "asterisk/threadstorage.h"
#include "asterisk/devicestate.h"
-#include "asterisk/event.h"
#include "asterisk/indications.h"
#include "asterisk/linkedlists.h"
#include "asterisk/stasis_endpoints.h"
@@ -6409,14 +6408,11 @@
{
char extout[AST_MAX_EXTENSION];
char message[32];
- RAII_VAR(struct ast_parking_bridge_feature_fn_table *, parking_provider,
- ast_parking_get_bridge_features(),
- ao2_cleanup);
RAII_VAR(struct ast_bridge_channel *, bridge_channel, NULL, ao2_cleanup);
SKINNY_DEBUG(DEBUG_PACKET, 3, "Received STIMULUS_CALLPARK from %s, inst %d, callref %d\n",
d->name, instance, callreference);
- if (!parking_provider) {
+ if (!ast_parking_provider_registered()) {
transmit_displaynotify(d, "Call Park not available", 10);
break;
}
@@ -6432,7 +6428,7 @@
break;
}
- if (!parking_provider->parking_park_call(bridge_channel, extout, sizeof(extout))) {
+ if (!ast_parking_park_call(bridge_channel, extout, sizeof(extout))) {
snprintf(message, sizeof(message), "Call Parked at: %s", extout);
transmit_displaynotify(d, message, 10);
break;
@@ -7159,14 +7155,11 @@
{
char extout[AST_MAX_EXTENSION];
char message[32];
- RAII_VAR(struct ast_parking_bridge_feature_fn_table *, parking_provider,
- ast_parking_get_bridge_features(),
- ao2_cleanup);
RAII_VAR(struct ast_bridge_channel *, bridge_channel, NULL, ao2_cleanup);
SKINNY_DEBUG(DEBUG_PACKET, 3, "Received SOFTKEY_PARK from %s, inst %d, callref %d\n",
d->name, instance, callreference);
- if (!parking_provider) {
+ if (!ast_parking_provider_registered()) {
transmit_displaynotify(d, "Call Park not available", 10);
break;
}
@@ -7184,7 +7177,7 @@
break;
}
- if (!parking_provider->parking_park_call(bridge_channel, extout, sizeof(extout))) {
+ if (!ast_parking_park_call(bridge_channel, extout, sizeof(extout))) {
snprintf(message, sizeof(message), "Call Parked at: %s", extout);
transmit_displaynotify(d, message, 10);
break;
Modified: team/dlee/ASTERISK-22036/channels/chan_unistim.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/channels/chan_unistim.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/channels/chan_unistim.c (original)
+++ team/dlee/ASTERISK-22036/channels/chan_unistim.c Mon Aug 19 13:26:19 2013
@@ -63,7 +63,6 @@
#include "asterisk/config.h"
#include "asterisk/module.h"
#include "asterisk/pbx.h"
-#include "asterisk/event.h"
#include "asterisk/rtp_engine.h"
#include "asterisk/netsock2.h"
#include "asterisk/acl.h"
Modified: team/dlee/ASTERISK-22036/channels/chan_vpb.cc
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/channels/chan_vpb.cc?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/channels/chan_vpb.cc (original)
+++ team/dlee/ASTERISK-22036/channels/chan_vpb.cc Mon Aug 19 13:26:19 2013
@@ -1033,15 +1033,7 @@
break;
case AST_FRAME_CONTROL:
- if (!(p->bridge->flags & AST_BRIDGE_IGNORE_SIGS)) {
- #if 0
- if (f.subclass == AST_CONTROL_BUSY ||
- f.subclass == AST_CONTROL_CONGESTION ||
- f.subclass == AST_CONTROL_HANGUP ||
- f.subclass == AST_CONTROL_FLASH)
- #endif
- endbridge = 1;
- }
+ endbridge = 1;
break;
default:
@@ -2263,12 +2255,7 @@
ast_verb(5, "%s: chanreads: Starting cycle ...\n", p->dev);
ast_verb(5, "%s: chanreads: Checking bridge \n", p->dev);
if (p->bridge) {
- if (p->bridge->c0 == p->owner && (p->bridge->flags & AST_BRIDGE_REC_CHANNEL_0))
- bridgerec = 1;
- else if (p->bridge->c1 == p->owner && (p->bridge->flags & AST_BRIDGE_REC_CHANNEL_1))
- bridgerec = 1;
- else
- bridgerec = 0;
+ bridgerec = 0;
} else {
bridgerec = ast_channel_is_bridged(p->owner) ? 1 : 0;
}
Modified: team/dlee/ASTERISK-22036/channels/sig_analog.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/channels/sig_analog.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/channels/sig_analog.c (original)
+++ team/dlee/ASTERISK-22036/channels/sig_analog.c Mon Aug 19 13:26:19 2013
@@ -1715,11 +1715,7 @@
int idx;
struct ast_callid *callid;
RAII_VAR(struct ast_features_pickup_config *, pickup_cfg, NULL, ao2_cleanup);
- RAII_VAR(struct ast_parking_bridge_feature_fn_table *, parking_provider,
- ast_parking_get_bridge_features(),
- ao2_cleanup);
const char *pickupexten;
- int is_exten_parking;
analog_increase_ss_count();
@@ -2077,6 +2073,8 @@
timeout = 999999;
}
while (len < AST_MAX_EXTENSION-1) {
+ int is_exten_parking = 0;
+
/* Read digit unless it's supposed to be immediate, in which case the
only answer is 's' */
if (p->immediate) {
@@ -2100,7 +2098,9 @@
} else {
analog_play_tone(p, idx, ANALOG_TONE_DIALTONE);
}
- is_exten_parking = (parking_provider ? parking_provider->parking_is_exten_park(ast_channel_context(chan), exten) : 0);
+ if (ast_parking_provider_registered()) {
+ is_exten_parking = ast_parking_is_exten_park(ast_channel_context(chan), exten);
+ }
if (ast_exists_extension(chan, ast_channel_context(chan), exten, 1, p->cid_num) && !is_exten_parking) {
if (!res || !ast_matchmore_extension(chan, ast_channel_context(chan), exten, 1, p->cid_num)) {
if (getforward) {
@@ -2253,7 +2253,7 @@
ast_channel_lock(chan);
bridge_channel = ast_channel_get_bridge_channel(chan);
ast_channel_unlock(chan);
- if (bridge_channel && !parking_provider->parking_blind_transfer_park(bridge_channel, ast_channel_context(chan), exten)) {
+ if (bridge_channel && !ast_parking_blind_transfer_park(bridge_channel, ast_channel_context(chan), exten)) {
ast_verb(3, "Parking call to '%s'\n", ast_channel_name(chan));
}
ao2_ref(bridge_channel, -1);
Modified: team/dlee/ASTERISK-22036/channels/sig_pri.c
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/channels/sig_pri.c?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/channels/sig_pri.c (original)
+++ team/dlee/ASTERISK-22036/channels/sig_pri.c Mon Aug 19 13:26:19 2013
@@ -8884,8 +8884,10 @@
* \brief MWI subscription event callback.
* \since 1.8
*
- * \param event the event being passed to the subscriber
- * \param userdata the data provider in the call to ast_event_subscribe()
+ * \param userdata the data provider in the call to stasis_subscribe()
+ * \param sub the subscription to which the message was delivered for this callback
+ * \param topic the topic on which the message was published
+ * \param msg the message being passed to the subscriber
*
* \return Nothing
*/
Modified: team/dlee/ASTERISK-22036/channels/sig_pri.h
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/channels/sig_pri.h?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/channels/sig_pri.h (original)
+++ team/dlee/ASTERISK-22036/channels/sig_pri.h Mon Aug 19 13:26:19 2013
@@ -27,7 +27,6 @@
#include "asterisk/channel.h"
#include "asterisk/frame.h"
-#include "asterisk/event.h"
#include "asterisk/ccss.h"
#include <libpri.h>
#include <dahdi/user.h>
Modified: team/dlee/ASTERISK-22036/channels/sip/include/sip.h
URL: http://svnview.digium.com/svn/asterisk/team/dlee/ASTERISK-22036/channels/sip/include/sip.h?view=diff&rev=396939&r1=396938&r2=396939
==============================================================================
--- team/dlee/ASTERISK-22036/channels/sip/include/sip.h (original)
+++ team/dlee/ASTERISK-22036/channels/sip/include/sip.h Mon Aug 19 13:26:19 2013
@@ -469,7 +469,7 @@
/*! \brief The number of media types in enum \ref media_type below. */
#define OFFERED_MEDIA_COUNT 4
-/*! \brief Media types generate different "dummy answers" for not accepting the offer of
+/*! \brief Media types generate different "dummy answers" for not accepting the offer of
a media stream. We need to add definitions for each RTP profile. Secure RTP is not
the same as normal RTP and will require a new definition */
enum media_type {
@@ -816,7 +816,7 @@
char authenticated; /*!< non-zero if this request was authenticated */
ptrdiff_t header[SIP_MAX_HEADERS]; /*!< Array of offsets into the request string of each SIP header*/
ptrdiff_t line[SIP_MAX_LINES]; /*!< Array of offsets into the request string of each SDP line*/
- struct ast_str *data;
+ struct ast_str *data;
struct ast_str *content;
/* XXX Do we need to unref socket.ser when the request goes away? */
struct sip_socket socket; /*!< The socket used for this request */
@@ -1084,7 +1084,7 @@
[... 8953 lines stripped ...]
More information about the asterisk-commits
mailing list