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
static void ast_remotecontrol(char *data)
{
- char buf[80];
+ char buf[256] = "";
int res;
char filename[80] = "";
char *hostname;
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;
}