Merged revisions 47944 via svnmerge from
authorJoshua Colp <jcolp@digium.com>
Wed, 22 Nov 2006 21:49:11 +0000 (21:49 +0000)
committerJoshua Colp <jcolp@digium.com>
Wed, 22 Nov 2006 21:49:11 +0000 (21:49 +0000)
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r47944 | file | 2006-11-22 16:47:43 -0500 (Wed, 22 Nov 2006) | 2 lines

Video will never reach Packet2Packet bridging and can do more harm then good.

........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47945 65c4cc65-6c06-0410-ace0-fbb531ad65f3

main/rtp.c

index 2edd2bb..5b63c00 100644 (file)
@@ -2952,7 +2952,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, };
@@ -2965,12 +2965,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_iod[0]);
@@ -3032,22 +3026,12 @@ static enum ast_bridge_result bridge_p2p_loop(struct ast_channel *c0, struct ast
                                                p1_callback = p2p_callback_disable(c1, p1, &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_iod[0]);
                                        p1_callback = p2p_callback_enable(c1, p1, &p1_iod[0]);
                                }
@@ -3085,10 +3069,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;
 }
@@ -3188,7 +3168,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);