aboutsummaryrefslogtreecommitdiffstats
path: root/main/channel.c
diff options
context:
space:
mode:
authorfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2006-09-21 19:27:26 +0000
committerfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2006-09-21 19:27:26 +0000
commitc2b2866b49ad8587959de5001451fcd06d82123d (patch)
treeb0189ada827e236d7b0171c788f0d2d8e356b744 /main/channel.c
parent29b08d4177783440ab270d038b205c7d029a742b (diff)
SS7 marked the start of an open season for trunk again but here's something minor - abstract early bridging into the technology so that we don't always assume they use RTP and try it.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@43437 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main/channel.c')
-rw-r--r--main/channel.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/main/channel.c b/main/channel.c
index 9c9f1daa3..3df9191f8 100644
--- a/main/channel.c
+++ b/main/channel.c
@@ -3675,6 +3675,16 @@ static enum ast_bridge_result ast_generic_bridge(struct ast_channel *c0, struct
return res;
}
+/*! \brief Bridge two channels together (early) */
+int ast_channel_early_bridge(struct ast_channel *c0, struct ast_channel *c1)
+{
+ /* Make sure we can early bridge, if not error out */
+ if (!c0->tech->early_bridge || (c1 && (!c1->tech->early_bridge || c0->tech->early_bridge != c1->tech->early_bridge)))
+ return -1;
+
+ return c0->tech->early_bridge(c0, c1);
+}
+
/*! \brief Bridge two channels together */
enum ast_bridge_result ast_channel_bridge(struct ast_channel *c0, struct ast_channel *c1,
struct ast_bridge_config *config, struct ast_frame **fo, struct ast_channel **rc)