summaryrefslogtreecommitdiff
path: root/include/asterisk
diff options
context:
space:
mode:
authorRichard Mudgett <rmudgett@digium.com>2013-06-21 17:48:14 +0000
committerRichard Mudgett <rmudgett@digium.com>2013-06-21 17:48:14 +0000
commitcd6e2538f2b4beaa8bbc1a63a9b15bcfec9205f5 (patch)
treeed55299ece90811b543578536f3a264c7da179f9 /include/asterisk
parentf3bfece4c3b0ecd77cdde1184f438ceb21572116 (diff)
Change several bridge functions to return error status.
The bridge frame queue functions need to return an error status if the frame failed to be queued because of an error condition. The main calls that needed to return the status are: ast_bridge_channel_queue_action_data() and ast_bridge_channel_write_action_data(). The other return changes are ripple effects. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@392435 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'include/asterisk')
-rw-r--r--include/asterisk/bridging.h70
-rw-r--r--include/asterisk/bridging_technology.h5
2 files changed, 46 insertions, 29 deletions
diff --git a/include/asterisk/bridging.h b/include/asterisk/bridging.h
index 5ea26a7ba..3f817f4f1 100644
--- a/include/asterisk/bridging.h
+++ b/include/asterisk/bridging.h
@@ -1088,9 +1088,10 @@ int ast_bridge_channel_queue_frame(struct ast_bridge_channel *bridge_channel, st
* \param data Frame payload data to pass.
* \param datalen Frame payload data length to pass.
*
- * \return Nothing
+ * \retval 0 on success.
+ * \retval -1 on error.
*/
-typedef void (*ast_bridge_channel_post_action_data)(struct ast_bridge_channel *bridge_channel, enum ast_bridge_action_type action, const void *data, size_t datalen);
+typedef int (*ast_bridge_channel_post_action_data)(struct ast_bridge_channel *bridge_channel, enum ast_bridge_action_type action, const void *data, size_t datalen);
/*!
* \brief Queue an action frame onto the bridge channel with data.
@@ -1101,9 +1102,10 @@ typedef void (*ast_bridge_channel_post_action_data)(struct ast_bridge_channel *b
* \param data Frame payload data to pass.
* \param datalen Frame payload data length to pass.
*
- * \return Nothing
+ * \retval 0 on success.
+ * \retval -1 on error.
*/
-void ast_bridge_channel_queue_action_data(struct ast_bridge_channel *bridge_channel, enum ast_bridge_action_type action, const void *data, size_t datalen);
+int ast_bridge_channel_queue_action_data(struct ast_bridge_channel *bridge_channel, enum ast_bridge_action_type action, const void *data, size_t datalen);
/*!
* \brief Write an action frame into the bridge with data.
@@ -1114,9 +1116,10 @@ void ast_bridge_channel_queue_action_data(struct ast_bridge_channel *bridge_chan
* \param data Frame payload data to pass.
* \param datalen Frame payload data length to pass.
*
- * \return Nothing
+ * \retval 0 on success.
+ * \retval -1 on error.
*/
-void ast_bridge_channel_write_action_data(struct ast_bridge_channel *bridge_channel, enum ast_bridge_action_type action, const void *data, size_t datalen);
+int ast_bridge_channel_write_action_data(struct ast_bridge_channel *bridge_channel, enum ast_bridge_action_type action, const void *data, size_t datalen);
/*!
* \brief Queue a control frame onto the bridge channel with data.
@@ -1127,9 +1130,10 @@ void ast_bridge_channel_write_action_data(struct ast_bridge_channel *bridge_chan
* \param data Frame payload data to pass.
* \param datalen Frame payload data length to pass.
*
- * \return Nothing
+ * \retval 0 on success.
+ * \retval -1 on error.
*/
-void ast_bridge_channel_queue_control_data(struct ast_bridge_channel *bridge_channel, enum ast_control_frame_type control, const void *data, size_t datalen);
+int ast_bridge_channel_queue_control_data(struct ast_bridge_channel *bridge_channel, enum ast_control_frame_type control, const void *data, size_t datalen);
/*!
* \brief Write a control frame into the bridge with data.
@@ -1140,9 +1144,10 @@ void ast_bridge_channel_queue_control_data(struct ast_bridge_channel *bridge_cha
* \param data Frame payload data to pass.
* \param datalen Frame payload data length to pass.
*
- * \return Nothing
+ * \retval 0 on success.
+ * \retval -1 on error.
*/
-void ast_bridge_channel_write_control_data(struct ast_bridge_channel *bridge_channel, enum ast_control_frame_type control, const void *data, size_t datalen);
+int ast_bridge_channel_write_control_data(struct ast_bridge_channel *bridge_channel, enum ast_control_frame_type control, const void *data, size_t datalen);
/*!
* \brief Write a hold frame into the bridge.
@@ -1151,9 +1156,10 @@ void ast_bridge_channel_write_control_data(struct ast_bridge_channel *bridge_cha
* \param bridge_channel Which channel is putting the hold into the bridge.
* \param moh_class The suggested music class for the other end to use.
*
- * \return Nothing
+ * \retval 0 on success.
+ * \retval -1 on error.
*/
-void ast_bridge_channel_write_hold(struct ast_bridge_channel *bridge_channel, const char *moh_class);
+int ast_bridge_channel_write_hold(struct ast_bridge_channel *bridge_channel, const char *moh_class);
/*!
* \brief Write an unhold frame into the bridge.
@@ -1161,9 +1167,10 @@ void ast_bridge_channel_write_hold(struct ast_bridge_channel *bridge_channel, co
*
* \param bridge_channel Which channel is putting the hold into the bridge.
*
- * \return Nothing
+ * \retval 0 on success.
+ * \retval -1 on error.
*/
-void ast_bridge_channel_write_unhold(struct ast_bridge_channel *bridge_channel);
+int ast_bridge_channel_write_unhold(struct ast_bridge_channel *bridge_channel);
/*!
* \brief Run an application on the bridge channel.
@@ -1195,9 +1202,10 @@ void ast_bridge_channel_run_app(struct ast_bridge_channel *bridge_channel, const
*
* \note This is intended to be called by bridge hooks.
*
- * \return Nothing
+ * \retval 0 on success.
+ * \retval -1 on error.
*/
-void ast_bridge_channel_write_app(struct ast_bridge_channel *bridge_channel, const char *app_name, const char *app_args, const char *moh_class);
+int ast_bridge_channel_write_app(struct ast_bridge_channel *bridge_channel, const char *app_name, const char *app_args, const char *moh_class);
/*!
* \brief Queue a bridge action run application frame onto the bridge channel.
@@ -1212,9 +1220,10 @@ void ast_bridge_channel_write_app(struct ast_bridge_channel *bridge_channel, con
*
* \note This is intended to be called by bridge hooks.
*
- * \return Nothing
+ * \retval 0 on success.
+ * \retval -1 on error.
*/
-void ast_bridge_channel_queue_app(struct ast_bridge_channel *bridge_channel, const char *app_name, const char *app_args, const char *moh_class);
+int ast_bridge_channel_queue_app(struct ast_bridge_channel *bridge_channel, const char *app_name, const char *app_args, const char *moh_class);
/*!
* \brief Custom interpretation of the playfile name.
@@ -1256,9 +1265,10 @@ void ast_bridge_channel_playfile(struct ast_bridge_channel *bridge_channel, ast_
*
* \note This is intended to be called by bridge hooks.
*
- * \return Nothing
+ * \retval 0 on success.
+ * \retval -1 on error.
*/
-void ast_bridge_channel_write_playfile(struct ast_bridge_channel *bridge_channel, ast_bridge_custom_play_fn custom_play, const char *playfile, const char *moh_class);
+int ast_bridge_channel_write_playfile(struct ast_bridge_channel *bridge_channel, ast_bridge_custom_play_fn custom_play, const char *playfile, const char *moh_class);
/*!
* \brief Queue a bridge action play file frame onto the bridge channel.
@@ -1273,9 +1283,10 @@ void ast_bridge_channel_write_playfile(struct ast_bridge_channel *bridge_channel
*
* \note This is intended to be called by bridge hooks.
*
- * \return Nothing
+ * \retval 0 on success.
+ * \retval -1 on error.
*/
-void ast_bridge_channel_queue_playfile(struct ast_bridge_channel *bridge_channel, ast_bridge_custom_play_fn custom_play, const char *playfile, const char *moh_class);
+int ast_bridge_channel_queue_playfile(struct ast_bridge_channel *bridge_channel, ast_bridge_custom_play_fn custom_play, const char *playfile, const char *moh_class);
/*!
* \brief Custom callback run on a bridge channel.
@@ -1303,9 +1314,10 @@ typedef void (*ast_bridge_custom_callback_fn)(struct ast_bridge_channel *bridge_
*
* \note This is intended to be called by bridge hooks.
*
- * \return Nothing
+ * \retval 0 on success.
+ * \retval -1 on error.
*/
-void ast_bridge_channel_write_callback(struct ast_bridge_channel *bridge_channel, ast_bridge_custom_callback_fn callback, const void *payload, size_t payload_size);
+int ast_bridge_channel_write_callback(struct ast_bridge_channel *bridge_channel, ast_bridge_custom_callback_fn callback, const void *payload, size_t payload_size);
/*!
* \brief Queue a bridge action custom callback frame onto the bridge channel.
@@ -1320,9 +1332,10 @@ void ast_bridge_channel_write_callback(struct ast_bridge_channel *bridge_channel
*
* \note This is intended to be called by bridge hooks.
*
- * \return Nothing
+ * \retval 0 on success.
+ * \retval -1 on error.
*/
-void ast_bridge_channel_queue_callback(struct ast_bridge_channel *bridge_channel, ast_bridge_custom_callback_fn callback, const void *payload, size_t payload_size);
+int ast_bridge_channel_queue_callback(struct ast_bridge_channel *bridge_channel, ast_bridge_custom_callback_fn callback, const void *payload, size_t payload_size);
/*!
* \brief Have a bridge channel park a channel in the bridge
@@ -1335,9 +1348,10 @@ void ast_bridge_channel_queue_callback(struct ast_bridge_channel *bridge_channel
*
* \note This is intended to be called by bridge hooks.
*
- * \return Nothing
+ * \retval 0 on success.
+ * \retval -1 on error.
*/
-void ast_bridge_channel_write_park(struct ast_bridge_channel *bridge_channel, const char *parkee_uuid,
+int ast_bridge_channel_write_park(struct ast_bridge_channel *bridge_channel, const char *parkee_uuid,
const char *parker_uuid, const char *app_data);
/*!
diff --git a/include/asterisk/bridging_technology.h b/include/asterisk/bridging_technology.h
index 3c808b159..33bdf2584 100644
--- a/include/asterisk/bridging_technology.h
+++ b/include/asterisk/bridging_technology.h
@@ -196,8 +196,11 @@ int ast_bridge_technology_unregister(struct ast_bridge_technology *technology);
* \param bridge_channel The bridge channel that has either started or stopped talking.
* \param started_talking set to 1 when this indicates the channel has started talking set to 0
* when this indicates the channel has stopped talking.
+ *
+ * \retval 0 on success.
+ * \retval -1 on error.
*/
-void ast_bridge_notify_talking(struct ast_bridge_channel *bridge_channel, int started_talking);
+int ast_bridge_notify_talking(struct ast_bridge_channel *bridge_channel, int started_talking);
/*!
* \brief Suspend a bridge technology from consideration