Backport revision 429223 from Asterisk 13

The bug fixed by that patch exists in Asterisk 11 as
well, so the fix should be applied there.

When connecting to a remote Asterisk console, the buffer
used to read the initial hostname/pid/version from the
main Asterisk process did not ensure the input was
NULL-terminated, and the buffer was small for certain
use cases. This patch expands the buffer to be 256
bytes and ensures the input it reads is NULL-terminated.

ASTERISK-21854 #close
Reported by klaus3000



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/11@433919 65c4cc65-6c06-0410-ace0-fbb531ad65f3
changes/61/61/1
Mark Michelson 12 years ago
parent e159080c45
commit 695dcfbf8b

@ -3056,7 +3056,7 @@ static int ast_el_read_history(char *filename)
static void ast_remotecontrol(char *data)
{
char buf[80];
char buf[256] = "";
int res;
char filename[80] = "";
char *hostname;
@ -3073,7 +3073,7 @@ static void ast_remotecontrol(char *data)
signal(SIGTERM, __remote_quit_handler);
signal(SIGHUP, __remote_quit_handler);
if (read(ast_consock, buf, sizeof(buf)) < 0) {
if (read(ast_consock, buf, sizeof(buf) - 1) < 0) {
ast_log(LOG_ERROR, "read() failed: %s\n", strerror(errno));
return;
}

Loading…
Cancel
Save