diff options
author | file <file@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-11-22 21:47:43 +0000 |
---|---|---|
committer | file <file@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-11-22 21:47:43 +0000 |
commit | 72caddea31ba2ffbd0a87cd5947de27536363b42 (patch) | |
tree | f9c87bdef1e38775c1780577864dad0792255f61 /main | |
parent | a6765e9ff459638bc72f7c0eb55caafa41737aa3 (diff) |
Video will never reach Packet2Packet bridging and can do more harm then good.
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@47944 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main')
-rw-r--r-- | main/rtp.c | 24 |
1 files changed, 2 insertions, 22 deletions
diff --git a/main/rtp.c b/main/rtp.c index ec1c47605..39593229d 100644 --- a/main/rtp.c +++ b/main/rtp.c @@ -2884,7 +2884,7 @@ static int p2p_callback_disable(struct ast_channel *chan, struct ast_rtp *rtp, i } /*! \brief Bridge loop for partial native bridge (packet2packet) */ -static enum ast_bridge_result bridge_p2p_loop(struct ast_channel *c0, struct ast_channel *c1, struct ast_rtp *p0, struct ast_rtp *p1, struct ast_rtp *vp0, struct ast_rtp *vp1, int timeoutms, int flags, struct ast_frame **fo, struct ast_channel **rc, void *pvt0, void *pvt1) +static enum ast_bridge_result bridge_p2p_loop(struct ast_channel *c0, struct ast_channel *c1, struct ast_rtp *p0, struct ast_rtp *p1, int timeoutms, int flags, struct ast_frame **fo, struct ast_channel **rc, void *pvt0, void *pvt1) { struct ast_frame *fr = NULL; struct ast_channel *who = NULL, *other = NULL, *cs[3] = {NULL, }; @@ -2898,12 +2898,6 @@ static enum ast_bridge_result bridge_p2p_loop(struct ast_channel *c0, struct ast p0->bridged = p1; ast_clear_flag(p1, FLAG_P2P_SENT_MARK); p1->bridged = p0; - if (vp0) { - ast_clear_flag(vp0, FLAG_P2P_SENT_MARK); - vp0->bridged = vp1; - ast_clear_flag(vp1, FLAG_P2P_SENT_MARK); - vp1->bridged = vp0; - } /* Activate callback modes if possible */ p0_callback = p2p_callback_enable(c0, p0, &p0_fds[0], &p0_iod[0]); @@ -2964,22 +2958,12 @@ static enum ast_bridge_result bridge_p2p_loop(struct ast_channel *c0, struct ast p1_callback = p2p_callback_disable(c1, p1, &p1_fds[0], &p1_iod[0]); p0->bridged = NULL; p1->bridged = NULL; - if (vp0) { - vp0->bridged = NULL; - vp1->bridged = NULL; - } } else if (fr->subclass == AST_CONTROL_UNHOLD) { /* If we are off hold, then go back to callback mode and P2P bridging */ ast_clear_flag(p0, FLAG_P2P_SENT_MARK); p0->bridged = p1; ast_clear_flag(p1, FLAG_P2P_SENT_MARK); p1->bridged = p0; - if (vp0) { - ast_clear_flag(vp0, FLAG_P2P_SENT_MARK); - vp0->bridged = vp1; - ast_clear_flag(vp1, FLAG_P2P_SENT_MARK); - vp1->bridged = vp0; - } p0_callback = p2p_callback_enable(c0, p0, &p0_fds[0], &p0_iod[0]); p1_callback = p2p_callback_enable(c1, p1, &p1_fds[0], &p1_iod[0]); } @@ -3016,10 +3000,6 @@ static enum ast_bridge_result bridge_p2p_loop(struct ast_channel *c0, struct ast /* Break out of the direct bridge */ p0->bridged = NULL; p1->bridged = NULL; - if (vp0) { - vp0->bridged = NULL; - vp1->bridged = NULL; - } return res; } @@ -3119,7 +3099,7 @@ enum ast_bridge_result ast_rtp_bridge(struct ast_channel *c0, struct ast_channel } if (option_verbose > 2) ast_verbose(VERBOSE_PREFIX_3 "Packet2Packet bridging %s and %s\n", c0->name, c1->name); - res = bridge_p2p_loop(c0, c1, p0, p1, vp0, vp1, timeoutms, flags, fo, rc, pvt0, pvt1); + res = bridge_p2p_loop(c0, c1, p0, p1, timeoutms, flags, fo, rc, pvt0, pvt1); } else { if (option_verbose > 2) ast_verbose(VERBOSE_PREFIX_3 "Native bridging %s and %s\n", c0->name, c1->name); |