[Asterisk-code-review] bridge_channel: Ensure text messages are zero terminated (asterisk[13])

Sean Bright asteriskteam at digium.com
Wed Aug 19 12:58:36 CDT 2020


Sean Bright has uploaded this change for review. ( https://gerrit.asterisk.org/c/asterisk/+/14736 )


Change subject: bridge_channel: Ensure text messages are zero terminated
......................................................................

bridge_channel: Ensure text messages are zero terminated

T.140 data in RTP is not zero terminated, so when we are queuing a text
frame on a bridge we need to ensure that we are passing a zero
terminated string.

ASTERISK-28974 #close

Change-Id: Ic10057387ce30b2094613ea67e3ae8c5c431dda3
---
M main/bridge_channel.c
1 file changed, 13 insertions(+), 3 deletions(-)



  git pull ssh://gerrit.asterisk.org:29418/asterisk refs/changes/36/14736/1

diff --git a/main/bridge_channel.c b/main/bridge_channel.c
index 1a7df87..8144e32 100644
--- a/main/bridge_channel.c
+++ b/main/bridge_channel.c
@@ -2362,9 +2362,19 @@
 	case AST_FRAME_NULL:
 		break;
 	case AST_FRAME_TEXT:
-		ast_debug(1, "Sending TEXT frame to '%s': %*.s\n",
-			ast_channel_name(bridge_channel->chan), fr->datalen, (char *)fr->data.ptr);
-		ast_sendtext(bridge_channel->chan, fr->data.ptr);
+		{
+			char *txt;
+			ast_debug(1, "Sending TEXT frame to '%s': %*.s\n",
+				ast_channel_name(bridge_channel->chan),
+				fr->datalen, (char *) fr->data.ptr);
+
+			/* Make sure to zero terminate the text data we are trying to send */
+			txt = ast_strndup(fr->data.ptr, fr->datalen);
+			if (txt) {
+				ast_sendtext(bridge_channel->chan, txt);
+				ast_free(txt);
+			}
+		}
 		break;
 	case AST_FRAME_TEXT_DATA:
 		msg = (struct ast_msg_data *)fr->data.ptr;

-- 
To view, visit https://gerrit.asterisk.org/c/asterisk/+/14736
To unsubscribe, or for help writing mail filters, visit https://gerrit.asterisk.org/settings

Gerrit-Project: asterisk
Gerrit-Branch: 13
Gerrit-Change-Id: Ic10057387ce30b2094613ea67e3ae8c5c431dda3
Gerrit-Change-Number: 14736
Gerrit-PatchSet: 1
Gerrit-Owner: Sean Bright <sean.bright at gmail.com>
Gerrit-MessageType: newchange
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-code-review/attachments/20200819/e1c9b16a/attachment.html>


More information about the asterisk-code-review mailing list