If the Packet2Packet bridge is being broken because of a masquerade then attempt to read a frame in so the masquerade actually happens. Otherwise weirdness will occur. (issue #8696 reported by kjotte)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@49066 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.4
Joshua Colp 19 years ago
parent 37e5a39d76
commit 156a6cf5db

@ -3000,6 +3000,10 @@ static enum ast_bridge_result bridge_p2p_loop(struct ast_channel *c0, struct ast
(c1->tech_pvt != pvt1) ||
(c0->masq || c0->masqr || c1->masq || c1->masqr)) {
ast_log(LOG_DEBUG, "Oooh, something is weird, backing out\n");
if ((c0->masq || c0->masqr) && (fr = ast_read(c0)))
ast_frfree(fr);
if ((c1->masq || c1->masqr) && (fr = ast_read(c1)))
ast_frfree(fr);
res = AST_BRIDGE_RETRY;
break;
}

Loading…
Cancel
Save