From: Sean Bright Date: Sat, 30 May 2009 19:36:20 +0000 (+0000) Subject: Properly terminate AMI JabberSend response messages. X-Git-Tag: 1.4.26-rc2~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8fc78eae7adbc500056074733666f27586428206;p=thirdparty%2Fasterisk.git Properly terminate AMI JabberSend response messages. The response message (either Error or Success) needs an extra trailing \r\n after the fields to inform the client that the message is complete. (closes issue #14876) Reported by: srt Patches: 05302009_1.4_res_jabber.c.diff uploaded by seanbright (license 71) asterisk_14876.patch uploaded by srt (license 378) trunk-14876-2.diff uploaded by phsultan (license 73) git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@198370 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/res/res_jabber.c b/res/res_jabber.c index 0079ee9ff8..d1729f1793 100644 --- a/res/res_jabber.c +++ b/res/res_jabber.c @@ -2423,16 +2423,16 @@ static int manager_jabber_send(struct mansession *s, const struct message *m) astman_send_error(s, m, "Could not find Sender"); return 0; } - if (strchr(screenname, '@') && message){ - ast_aji_send(client, screenname, message); - if (!ast_strlen_zero(id)) - astman_append(s, "ActionID: %s\r\n",id); + if (strchr(screenname, '@') && message) { + ast_aji_send(client, screenname, message); astman_append(s, "Response: Success\r\n"); - return 0; + } else { + astman_append(s, "Response: Failure\r\n"); + } + if (!ast_strlen_zero(id)) { + astman_append(s, "ActionID: %s\r\n", id); } - if (!ast_strlen_zero(id)) - astman_append(s, "ActionID: %s\r\n",id); - astman_append(s, "Response: Failure\r\n"); + astman_append(s, "\r\n"); return 0; }