summaryrefslogtreecommitdiff
path: root/bridges
diff options
context:
space:
mode:
authorRichard Mudgett <rmudgett@digium.com>2017-06-23 11:17:51 -0500
committerRichard Mudgett <rmudgett@digium.com>2017-07-05 17:10:07 -0500
commit1028f64be478d7197dff3f7be6615c802d773a60 (patch)
tree2dda657f230f7c483c0d3b38e6a035f8d79d4e0d /bridges
parent7a306468f4af4dbf4097c012609b252e1060e7ad (diff)
bridge_native_rtp.c: Fix direct media video RTP instance ACL check.
The video stream was using the audio stream RTP instance addresses to check if the video RTP gets directed to an allowed direct media Access Control List (ACL) address. There is no guarantee that the video RTP instance uses the same addresses as the audio RTP instance. This looks like it has been a bug since v11 when direct media ACL was first added to chan_sip and then faithfully reproduced through a couple code refactorings into the new bridging architecture. Change-Id: I8ddd56320e0eea769f3ceed3fa5b6bdfb51d681a
Diffstat (limited to 'bridges')
-rw-r--r--bridges/bridge_native_rtp.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/bridges/bridge_native_rtp.c b/bridges/bridge_native_rtp.c
index a459c9ce7..02b27e123 100644
--- a/bridges/bridge_native_rtp.c
+++ b/bridges/bridge_native_rtp.c
@@ -182,10 +182,10 @@ static int rtp_glue_data_get(struct ast_channel *c0, struct rtp_glue_data *glue0
}
}
if (glue0->video.result == glue1->video.result && glue1->video.result == AST_RTP_GLUE_RESULT_REMOTE) {
- if (glue0->cb->allow_vrtp_remote && !glue0->cb->allow_vrtp_remote(c0, glue1->audio.instance)) {
- /* if the allow_vrtp_remote indicates that remote isn't allowed, revert to local bridge */
+ if (glue0->cb->allow_vrtp_remote && !glue0->cb->allow_vrtp_remote(c0, glue1->video.instance)) {
+ /* If the allow_vrtp_remote indicates that remote isn't allowed, revert to local bridge */
glue0->video.result = glue1->video.result = AST_RTP_GLUE_RESULT_LOCAL;
- } else if (glue1->cb->allow_vrtp_remote && !glue1->cb->allow_vrtp_remote(c1, glue0->audio.instance)) {
+ } else if (glue1->cb->allow_vrtp_remote && !glue1->cb->allow_vrtp_remote(c1, glue0->video.instance)) {
glue0->video.result = glue1->video.result = AST_RTP_GLUE_RESULT_LOCAL;
}
}