diff options
author | Joshua Colp <jcolp@digium.com> | 2007-12-17 15:18:58 +0000 |
---|---|---|
committer | Joshua Colp <jcolp@digium.com> | 2007-12-17 15:18:58 +0000 |
commit | e693a515cc80412e2c328f43513859e6ff72645b (patch) | |
tree | f32aafcab17db7c927d61fc53f45bfb88faa51a2 /channels | |
parent | 97b3e7ec72ec841ebb69387897b09cbfaa302ef4 (diff) |
Fix usage of rtptimeout. It can be used without rtpkeepalive, and the value can not be accessed directly in the SIP pvt structure. All RTP related timeouts have to be retrieved using the ast_rtp_* function calls.
(closes issue #11562)
Reported by: ibc
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93190 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rw-r--r-- | channels/chan_sip.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 6e5a3b17a..fc9c49b8f 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -16921,7 +16921,7 @@ static void check_rtp_timeout(struct sip_pvt *dialog, time_t t) return; /* If we have no timers set, return now */ - if (ast_rtp_get_rtpkeepalive(dialog->rtp) == 0 || (ast_rtp_get_rtptimeout(dialog->rtp) == 0 && ast_rtp_get_rtpholdtimeout(dialog->rtp) == 0)) + if ((ast_rtp_get_rtpkeepalive(dialog->rtp) == 0) && (ast_rtp_get_rtptimeout(dialog->rtp) == 0) && (ast_rtp_get_rtpholdtimeout(dialog->rtp) == 0)) return; /* Check AUDIO RTP keepalives */ @@ -16948,7 +16948,7 @@ static void check_rtp_timeout(struct sip_pvt *dialog, time_t t) if (sin.sin_addr.s_addr || (ast_rtp_get_rtpholdtimeout(dialog->rtp) && (t > dialog->lastrtprx + ast_rtp_get_rtpholdtimeout(dialog->rtp)))) { /* Needs a hangup */ - if (dialog->rtptimeout) { + if (ast_rtp_get_rtptimeout(dialog->rtp)) { while (dialog->owner && ast_channel_trylock(dialog->owner)) { sip_pvt_unlock(dialog); usleep(1); |