From: <jpg...@us...> - 2007-12-20 15:27:22
|
Revision: 1322 http://iaxclient.svn.sourceforge.net/iaxclient/?rev=1322&view=rev Author: jpgrayson Date: 2007-12-20 07:27:27 -0800 (Thu, 20 Dec 2007) Log Message: ----------- Apply patch from Lee Howard / Digium's bugtracker issue 6620. This fixes some crashes in iax_showframe() Modified Paths: -------------- trunk/lib/libiax2/src/iax2-parser.c Modified: trunk/lib/libiax2/src/iax2-parser.c =================================================================== --- trunk/lib/libiax2/src/iax2-parser.c 2007-12-20 15:18:27 UTC (rev 1321) +++ trunk/lib/libiax2/src/iax2-parser.c 2007-12-20 15:27:27 UTC (rev 1322) @@ -345,7 +345,12 @@ "ANSWER ", "BUSY ", "TKOFFHK ", - "OFFHOOK" }; + "OFFHOOK ", + "CONGESTION ", + "FLASH ", + "WINK ", + "OPTION " + }; struct ast_iax2_full_hdr *fh; char retries[20]; char class2[20]; @@ -368,7 +373,7 @@ /* Don't mess with mini-frames */ return; } - if (fh->type > (int)sizeof(frames)/(int)sizeof(char *)) { + if (fh->type >= (int)(sizeof(frames)/sizeof(char *))) { snprintf(class2, (int)sizeof(class2), "(%d?)", fh->type); clas = class2; } else { @@ -385,7 +390,7 @@ subclass = iaxs[(int)fh->csub]; } } else if (fh->type == AST_FRAME_CONTROL) { - if (fh->csub > (int)sizeof(cmds)/(int)sizeof(char *)) { + if (fh->csub >= (int)(sizeof(cmds)/sizeof(char *))) { snprintf(subclass2, (int)sizeof(subclass2), "(%d?)", fh->csub); subclass = subclass2; } else { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |