[asterisk-commits] tilghman: branch 1.6.0 r130171 - in /branches/1.6.0: ./ channels/chan_iax2.c
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Fri Jul 11 13:53:23 CDT 2008
Author: tilghman
Date: Fri Jul 11 13:53:22 2008
New Revision: 130171
URL: http://svn.digium.com/view/asterisk?view=rev&rev=130171
Log:
Merged revisions 130170 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
................
r130170 | tilghman | 2008-07-11 13:52:42 -0500 (Fri, 11 Jul 2008) | 15 lines
Merged revisions 130169 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r130169 | tilghman | 2008-07-11 13:51:56 -0500 (Fri, 11 Jul 2008) | 7 lines
Ensure that a destination callno of 0 will not match for frames that do not
start a dialog (new, lagrq, and ping).
(closes issue #12963)
Reported by: russellb
Patches:
chan_iax2_dup_new_fix4.patch uploaded by jpgrayson (license 492)
........
................
Modified:
branches/1.6.0/ (props changed)
branches/1.6.0/channels/chan_iax2.c
Propchange: branches/1.6.0/
------------------------------------------------------------------------------
Binary property 'trunk-merged' - no diff available.
Modified: branches/1.6.0/channels/chan_iax2.c
URL: http://svn.digium.com/view/asterisk/branches/1.6.0/channels/chan_iax2.c?view=diff&rev=130171&r1=130170&r2=130171
==============================================================================
--- branches/1.6.0/channels/chan_iax2.c (original)
+++ branches/1.6.0/channels/chan_iax2.c Fri Jul 11 13:53:22 2008
@@ -8003,12 +8003,21 @@
* Discussed in the following thread:
* http://lists.digium.com/pipermail/asterisk-dev/2008-May/033217.html
*/
- if (f.frametype != AST_FRAME_IAX ||
- (f.subclass != IAX_COMMAND_NEW &&
- f.subclass != IAX_COMMAND_PING &&
- f.subclass != IAX_COMMAND_LAGRQ)) {
- /* Get the destination call number */
- dcallno = ntohs(fh->dcallno) & ~IAX_FLAG_RETRANS;
+
+ /* Get the destination call number */
+ dcallno = ntohs(fh->dcallno) & ~IAX_FLAG_RETRANS;
+
+ if (f.frametype == AST_FRAME_IAX &&
+ (f.subclass == IAX_COMMAND_NEW ||
+ f.subclass == IAX_COMMAND_PING ||
+ f.subclass == IAX_COMMAND_LAGRQ)) {
+ dcallno = 0;
+ } else if (!dcallno) {
+ /* All other full-frames must have a non-zero dcallno,
+ * We silently drop this frame since it cannot be a
+ * valid match to an existing call session.
+ */
+ return 1;
}
if ((f.frametype == AST_FRAME_IAX) && ((f.subclass == IAX_COMMAND_NEW) || (f.subclass == IAX_COMMAND_REGREQ) ||
(f.subclass == IAX_COMMAND_POKE) || (f.subclass == IAX_COMMAND_FWDOWNL) ||
More information about the asterisk-commits
mailing list