From d773f9d03e5c337045a2434314ebd8da95bdad11 Mon Sep 17 00:00:00 2001 From: Matthew Jordan Date: Sun, 9 Nov 2014 00:26:57 +0000 Subject: [PATCH] addons/chan_mobile: Increase buffer size of UCS2 encoded SMS messages When UCS2 character encoding is used, one symbol in national language can be expanded to 4 bytes. The current buffer used for receiving message in do_monitor_phone is 256 bytes, which is not large enough for incoming messages. For example: * AT+CMGR phone response prefix '+CMGR: "REC UNREAD","+7**********",,"14/10/29,13:31:39+12"\r\n' - 60 bytes * SMS body with UCS2 encoding (max) - 280 bytes * AT+CMGR phone response suffix '\r\n\r\nOK\r\n' - 8 bytes * Terminating null character - 1 byte This results in a needed buffer size of 349 bytes. Hence, this patch opts for a 350 byte buffer. ASTERISK-24468 #close Reported by: Dmitriy Bubnov patches: chan_mobile-1_8.diff uploaded by Dmitriy Bubnov (License 6651) chan_mobile-trunk.diff uploaded by Dmitry Bubnov (License 6651) ........ Merged revisions 427607 from http://svn.asterisk.org/svn/asterisk/branches/11 ........ Merged revisions 427610 from http://svn.asterisk.org/svn/asterisk/branches/12 ........ Merged revisions 427611 from http://svn.asterisk.org/svn/asterisk/branches/13 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@427612 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- addons/chan_mobile.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/chan_mobile.c b/addons/chan_mobile.c index aa537c96ae..3304702d24 100644 --- a/addons/chan_mobile.c +++ b/addons/chan_mobile.c @@ -3801,7 +3801,7 @@ static void *do_monitor_phone(void *data) { struct mbl_pvt *pvt = (struct mbl_pvt *)data; struct hfp_pvt *hfp = pvt->hfp; - char buf[256]; + char buf[350]; int t; at_message_t at_msg; struct msg_queue_entry *entry;