[libpri-commits] mattf: branch 1.4 r514 - in /branches/1.4: ./ q931.c

SVN commits to the libpri project libpri-commits at lists.digium.com
Fri Jan 11 10:34:44 CST 2008


Author: mattf
Date: Fri Jan 11 10:34:44 2008
New Revision: 514

URL: http://svn.digium.com/view/libpri?view=rev&rev=514
Log:
Merged revisions 513 via svnmerge from 
https://origsvn.digium.com/svn/libpri/branches/1.2

........
r513 | mattf | 2008-01-11 10:33:52 -0600 (Fri, 11 Jan 2008) | 1 line

We should not be parsing further into the bearer capability IE if the length does not confirm that there actually is data present
........

Modified:
    branches/1.4/   (props changed)
    branches/1.4/q931.c

Propchange: branches/1.4/
------------------------------------------------------------------------------
--- branch-1.2-merged (original)
+++ branch-1.2-merged Fri Jan 11 10:34:44 2008
@@ -1,1 +1,1 @@
-/branches/1.2:1-332,385,389,415,423,426,445,460,478
+/branches/1.2:1-332,385,389,415,423,426,445,460,478,513

Modified: branches/1.4/q931.c
URL: http://svn.digium.com/view/libpri/branches/1.4/q931.c?view=diff&rev=514&r1=513&r2=514
==============================================================================
--- branches/1.4/q931.c (original)
+++ branches/1.4/q931.c Fri Jan 11 10:34:44 2008
@@ -591,8 +591,9 @@
 		pos++;
 	}
 	/* Stop here if no more */
-	if (pos >= len)
+	if (pos >= len - 2)
 		return;
+
 	if ((ie->data[1] & 0x7f) != TRANS_MODE_PACKET) {
 		/* Look for octets 5 and 5.a if present */
 		pri_message(pri, "%c                              Ext: %d  User information layer 1: %s (%d)\n", prefix, (ie->data[pos] >> 7), l12str(ie->data[pos] & 0x7f), ie->data[pos] & 0x7f);
@@ -619,6 +620,10 @@
 	call->transmoderate = ie->data[1] & 0x7f;
 	if (call->transmoderate == PRI_TRANS_CAP_AUDIO_4ESS)
 		call->transmoderate = PRI_TRANS_CAP_3_1K_AUDIO;
+
+	if (pos >= len - 2)
+		return 0;
+
 	if (call->transmoderate != TRANS_MODE_PACKET) {
 		call->userl1 = ie->data[pos] & 0x7f;
 		if (call->userl1 == PRI_LAYER_1_ITU_RATE_ADAPT) {




More information about the libpri-commits mailing list