[asterisk-commits] file: trunk r93190 - /trunk/channels/chan_sip.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Mon Dec 17 09:18:59 CST 2007


Author: file
Date: Mon Dec 17 09:18:58 2007
New Revision: 93190

URL: http://svn.digium.com/view/asterisk?view=rev&rev=93190
Log:
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

Modified:
    trunk/channels/chan_sip.c

Modified: trunk/channels/chan_sip.c
URL: http://svn.digium.com/view/asterisk/trunk/channels/chan_sip.c?view=diff&rev=93190&r1=93189&r2=93190
==============================================================================
--- trunk/channels/chan_sip.c (original)
+++ trunk/channels/chan_sip.c Mon Dec 17 09:18:58 2007
@@ -16921,7 +16921,7 @@
 		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 @@
 		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);




More information about the asterisk-commits mailing list