summaryrefslogtreecommitdiffstats
path: root/drivers/atmodem/cbs.c
diff options
context:
space:
mode:
authorDenis Kenzior <denkenz@gmail.com>2010-02-02 11:13:06 -0600
committerDenis Kenzior <denkenz@gmail.com>2010-02-02 11:13:22 -0600
commitae25d1e91089b0fd73fd22692aaa81889425aa93 (patch)
tree49f342c2315808653ae36b54fb0ec14430c2520e /drivers/atmodem/cbs.c
parenta4b681f02fe2a935bf48ac2f85d1dd6622f5bc01 (diff)
downloadofono-ae25d1e91089b0fd73fd22692aaa81889425aa93.tar.bz2
Fix: Ignore CBM pdus bigger than 88 bytes
Diffstat (limited to 'drivers/atmodem/cbs.c')
-rw-r--r--drivers/atmodem/cbs.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/atmodem/cbs.c b/drivers/atmodem/cbs.c
index 661207be..39f019bb 100644
--- a/drivers/atmodem/cbs.c
+++ b/drivers/atmodem/cbs.c
@@ -66,6 +66,11 @@ static void at_cbm_notify(GAtResult *result, gpointer user_data)
if (!g_at_result_iter_next_number(&iter, &pdulen))
return;
+ if (pdulen > 88) {
+ ofono_error("Got a CBM message bigger than maximum size!");
+ return;
+ }
+
hexpdu = g_at_result_pdu(result);
if (!hexpdu) {