[svn-commits] mmichelson: branch 12 r420386 - in /branches/12: include/asterisk/ main/ res/
SVN commits to the Digium repositories
svn-commits at lists.digium.com
Thu Aug 7 14:42:45 CDT 2014
Author: mmichelson
Date: Thu Aug 7 14:42:43 2014
New Revision: 420386
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=420386
Log:
Revert previous patch since it had some unreviewed content in it.
Modified:
branches/12/include/asterisk/res_pjsip_pubsub.h
branches/12/main/bridge.c
branches/12/res/res_pjsip_dialog_info_body_generator.c
branches/12/res/res_pjsip_exten_state.c
branches/12/res/res_pjsip_mwi.c
branches/12/res/res_pjsip_mwi_body_generator.c
branches/12/res/res_pjsip_pidf_body_generator.c
branches/12/res/res_pjsip_pubsub.c
branches/12/res/res_pjsip_xpidf_body_generator.c
Modified: branches/12/include/asterisk/res_pjsip_pubsub.h
URL: http://svnview.digium.com/svn/asterisk/branches/12/include/asterisk/res_pjsip_pubsub.h?view=diff&rev=420386&r1=420385&r2=420386
==============================================================================
--- branches/12/include/asterisk/res_pjsip_pubsub.h (original)
+++ branches/12/include/asterisk/res_pjsip_pubsub.h Thu Aug 7 14:42:43 2014
@@ -221,18 +221,11 @@
struct ast_sip_body *body;
};
-/*!
- * \brief Type information for NOTIFY/PUBLISH body data
- */
-#define AST_SIP_EXTEN_STATE_DATA "ast_sip_exten_state_data"
-#define AST_SIP_MESSAGE_ACCUMULATOR "ast_sip_message_accumulator"
-
#define AST_SIP_MAX_ACCEPT 32
struct ast_sip_subscription_handler {
/*! The name of the event this handler deals with */
const char *event_name;
- const char *body_type;
/*! The types of body this handler accepts.
*
* \note This option has no bearing when the handler is used in the
@@ -573,8 +566,6 @@
* In "plain/text", "text" is the subtype
*/
const char *subtype;
- /*! The type of body that the body generator takes as input */
- const char *body_type;
/*!
* \brief allocate body structure.
*
@@ -652,16 +643,6 @@
*/
int (*supplement_body)(void *body, void *data);
AST_LIST_ENTRY(ast_sip_pubsub_body_supplement) list;
-};
-
-/*!
- * \brief Data used to create bodies for NOTIFY/PUBLISH requests.
- */
-struct ast_sip_body_data {
- /*! The type of the data */
- const char *body_type;
- /*! The actual data from which the body is generated */
- void *body_data;
};
/*!
@@ -681,7 +662,7 @@
* \retval non-zero Failure
*/
int ast_sip_pubsub_generate_body_content(const char *content_type,
- const char *content_subtype, struct ast_sip_body_data *data, struct ast_str **str);
+ const char *content_subtype, void *data, struct ast_str **str);
/*!
* \since 13.0.0
Modified: branches/12/main/bridge.c
URL: http://svnview.digium.com/svn/asterisk/branches/12/main/bridge.c?view=diff&rev=420386&r1=420385&r2=420386
==============================================================================
--- branches/12/main/bridge.c (original)
+++ branches/12/main/bridge.c Thu Aug 7 14:42:43 2014
@@ -3879,12 +3879,8 @@
publication->to_transfer_target.bridge = to_target_bridge;
}
- if (to_transferee_bridge) {
- publication->transferee_channel = ast_bridge_peer(to_transferee_bridge, to_transferee);
- }
- if (to_target_bridge) {
- publication->target_channel = ast_bridge_peer(to_target_bridge, to_transfer_target);
- }
+ publication->transferee_channel = ast_bridge_peer(to_transferee_bridge, to_transferee);
+ publication->target_channel = ast_bridge_peer(to_target_bridge, to_transfer_target);
}
/*
Modified: branches/12/res/res_pjsip_dialog_info_body_generator.c
URL: http://svnview.digium.com/svn/asterisk/branches/12/res/res_pjsip_dialog_info_body_generator.c?view=diff&rev=420386&r1=420385&r2=420386
==============================================================================
--- branches/12/res/res_pjsip_dialog_info_body_generator.c (original)
+++ branches/12/res/res_pjsip_dialog_info_body_generator.c Thu Aug 7 14:42:43 2014
@@ -187,7 +187,6 @@
static struct ast_sip_pubsub_body_generator dialog_info_body_generator = {
.type = "application",
.subtype = "dialog-info+xml",
- .body_type = AST_SIP_EXTEN_STATE_DATA,
.allocate_body = dialog_info_allocate_body,
.generate_body_content = dialog_info_generate_body_content,
.to_string = dialog_info_to_string,
Modified: branches/12/res/res_pjsip_exten_state.c
URL: http://svnview.digium.com/svn/asterisk/branches/12/res/res_pjsip_exten_state.c?view=diff&rev=420386&r1=420385&r2=420386
==============================================================================
--- branches/12/res/res_pjsip_exten_state.c (original)
+++ branches/12/res/res_pjsip_exten_state.c Thu Aug 7 14:42:43 2014
@@ -81,7 +81,6 @@
struct ast_sip_subscription_handler presence_handler = {
.event_name = "presence",
- .body_type = AST_SIP_EXTEN_STATE_DATA,
.accept = { DEFAULT_PRESENCE_BODY, },
.default_accept = DEFAULT_PRESENCE_BODY,
.subscription_shutdown = subscription_shutdown,
@@ -94,7 +93,6 @@
struct ast_sip_subscription_handler dialog_handler = {
.event_name = "dialog",
- .body_type = AST_SIP_EXTEN_STATE_DATA,
.accept = { DEFAULT_DIALOG_BODY, },
.default_accept = DEFAULT_DIALOG_BODY,
.subscription_shutdown = subscription_shutdown,
@@ -182,16 +180,12 @@
const pj_str_t *reason_str_ptr = NULL;
pjsip_tx_data *tdata;
struct ast_sip_body body;
- struct ast_sip_body_data body_data = {
- .body_type = AST_SIP_EXTEN_STATE_DATA,
- .body_data = exten_state_data,
- };
body.type = ast_sip_subscription_get_body_type(exten_state_sub->sip_sub);
body.subtype = ast_sip_subscription_get_body_subtype(exten_state_sub->sip_sub);
if (ast_sip_pubsub_generate_body_content(body.type, body.subtype,
- &body_data, &body_text)) {
+ exten_state_data, &body_text)) {
ast_log(LOG_ERROR, "Unable to create body on NOTIFY request\n");
return;
}
Modified: branches/12/res/res_pjsip_mwi.c
URL: http://svnview.digium.com/svn/asterisk/branches/12/res/res_pjsip_mwi.c?view=diff&rev=420386&r1=420385&r2=420386
==============================================================================
--- branches/12/res/res_pjsip_mwi.c (original)
+++ branches/12/res/res_pjsip_mwi.c Thu Aug 7 14:42:43 2014
@@ -63,7 +63,6 @@
static struct ast_sip_subscription_handler mwi_handler = {
.event_name = "message-summary",
- .body_type = AST_SIP_MESSAGE_ACCUMULATOR,
.accept = { MWI_TYPE"/"MWI_SUBTYPE, },
.default_accept = MWI_TYPE"/"MWI_SUBTYPE,
.subscription_shutdown = mwi_subscription_shutdown,
@@ -433,10 +432,6 @@
pjsip_tx_data *tdata;
pj_str_t reason_str;
struct ast_sip_body body;
- struct ast_sip_body_data body_data = {
- .body_type = AST_SIP_MESSAGE_ACCUMULATOR,
- .body_data = &counter,
- };
body.type = sub->is_solicited ?
ast_sip_subscription_get_body_type(sub->sip_sub) :
@@ -453,7 +448,7 @@
reason_str_ptr = &reason_str;
}
- if (ast_sip_pubsub_generate_body_content(body.type, body.subtype, &body_data, &body_text)) {
+ if (ast_sip_pubsub_generate_body_content(body.type, body.subtype, &counter, &body_text)) {
ast_log(LOG_WARNING, "Unable to generate SIP MWI NOTIFY body.\n");
return;
}
Modified: branches/12/res/res_pjsip_mwi_body_generator.c
URL: http://svnview.digium.com/svn/asterisk/branches/12/res/res_pjsip_mwi_body_generator.c?view=diff&rev=420386&r1=420385&r2=420386
==============================================================================
--- branches/12/res/res_pjsip_mwi_body_generator.c (original)
+++ branches/12/res/res_pjsip_mwi_body_generator.c Thu Aug 7 14:42:43 2014
@@ -85,7 +85,6 @@
static struct ast_sip_pubsub_body_generator mwi_generator = {
.type = MWI_TYPE,
.subtype = MWI_SUBTYPE,
- .body_type = AST_SIP_MESSAGE_ACCUMULATOR,
.allocate_body = mwi_allocate_body,
.generate_body_content = mwi_generate_body_content,
.to_string = mwi_to_string,
Modified: branches/12/res/res_pjsip_pidf_body_generator.c
URL: http://svnview.digium.com/svn/asterisk/branches/12/res/res_pjsip_pidf_body_generator.c?view=diff&rev=420386&r1=420385&r2=420386
==============================================================================
--- branches/12/res/res_pjsip_pidf_body_generator.c (original)
+++ branches/12/res/res_pjsip_pidf_body_generator.c Thu Aug 7 14:42:43 2014
@@ -109,7 +109,6 @@
static struct ast_sip_pubsub_body_generator pidf_body_generator = {
.type = "application",
.subtype = "pidf+xml",
- .body_type = AST_SIP_EXTEN_STATE_DATA,
.allocate_body = pidf_allocate_body,
.generate_body_content = pidf_generate_body_content,
.to_string = pidf_to_string,
Modified: branches/12/res/res_pjsip_pubsub.c
URL: http://svnview.digium.com/svn/asterisk/branches/12/res/res_pjsip_pubsub.c?view=diff&rev=420386&r1=420385&r2=420386
==============================================================================
--- branches/12/res/res_pjsip_pubsub.c (original)
+++ branches/12/res/res_pjsip_pubsub.c Thu Aug 7 14:42:43 2014
@@ -366,7 +366,7 @@
static struct ast_sip_subscription_handler *find_sub_handler_for_event_name(const char *event_name);
static struct ast_sip_pubsub_body_generator *find_body_generator(char accept[AST_SIP_MAX_ACCEPT][64],
- size_t num_accept, const char *body_type);
+ size_t num_accept);
/*! \brief Retrieve a handler using the Event header of an rdata message */
static struct ast_sip_subscription_handler *subscription_get_handler_from_rdata(pjsip_rx_data *rdata)
@@ -414,7 +414,7 @@
num_accept_headers = 1;
}
- return find_body_generator(accept, num_accept_headers, handler->body_type);
+ return find_body_generator(accept, num_accept_headers);
}
/*! \brief Callback function to perform the actual recreation of a subscription */
@@ -1092,7 +1092,7 @@
}
static struct ast_sip_pubsub_body_generator *find_body_generator(char accept[AST_SIP_MAX_ACCEPT][64],
- size_t num_accept, const char *body_type)
+ size_t num_accept)
{
int i;
struct ast_sip_pubsub_body_generator *generator = NULL;
@@ -1101,12 +1101,6 @@
generator = find_body_generator_accept(accept[i]);
if (generator) {
ast_debug(3, "Body generator %p found for accept type %s\n", generator, accept[i]);
- if (strcmp(generator->body_type, body_type)) {
- ast_log(LOG_WARNING, "Body generator '%s/%s'(%p) does not accept the type of data this event generates\n",
- generator->type, generator->subtype, generator);
- generator = NULL;
- continue;
- }
break;
} else {
ast_debug(3, "No body generator found for accept type %s\n", accept[i]);
@@ -1517,7 +1511,7 @@
}
int ast_sip_pubsub_generate_body_content(const char *type, const char *subtype,
- struct ast_sip_body_data *data, struct ast_str **str)
+ void *data, struct ast_str **str)
{
struct ast_sip_pubsub_body_supplement *supplement;
struct ast_sip_pubsub_body_generator *generator;
@@ -1531,19 +1525,14 @@
return -1;
}
- if (strcmp(data->body_type, generator->body_type)) {
- ast_log(LOG_WARNING, "Body generator does not accept the type of data provided\n");
- return -1;
- }
-
- body = generator->allocate_body(data->body_data);
+ body = generator->allocate_body(data);
if (!body) {
ast_log(LOG_WARNING, "Unable to allocate a NOTIFY body of type %s/%s\n",
type, subtype);
return -1;
}
- if (generator->generate_body_content(body, data->body_data)) {
+ if (generator->generate_body_content(body, data)) {
res = -1;
goto end;
}
@@ -1552,7 +1541,7 @@
AST_RWLIST_TRAVERSE(&body_supplements, supplement, list) {
if (!strcmp(generator->type, supplement->type) &&
!strcmp(generator->subtype, supplement->subtype)) {
- res = supplement->supplement_body(body, data->body_data);
+ res = supplement->supplement_body(body, data);
if (res) {
break;
}
Modified: branches/12/res/res_pjsip_xpidf_body_generator.c
URL: http://svnview.digium.com/svn/asterisk/branches/12/res/res_pjsip_xpidf_body_generator.c?view=diff&rev=420386&r1=420385&r2=420386
==============================================================================
--- branches/12/res/res_pjsip_xpidf_body_generator.c (original)
+++ branches/12/res/res_pjsip_xpidf_body_generator.c Thu Aug 7 14:42:43 2014
@@ -126,7 +126,6 @@
static struct ast_sip_pubsub_body_generator xpidf_body_generator = {
.type = "application",
.subtype = "xpidf+xml",
- .body_type = AST_SIP_EXTEN_STATE_DATA,
.allocate_body = xpidf_allocate_body,
.generate_body_content = xpidf_generate_body_content,
.to_string = xpidf_to_string,
@@ -136,7 +135,6 @@
static struct ast_sip_pubsub_body_generator cpim_pidf_body_generator = {
.type = "application",
.subtype = "cpim-pidf+xml",
- .body_type = AST_SIP_EXTEN_STATE_DATA,
.allocate_body = xpidf_allocate_body,
.generate_body_content = xpidf_generate_body_content,
.to_string = xpidf_to_string,
More information about the svn-commits
mailing list