mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-20 12:20:12 +00:00
Don't use strncpy for moving a chunk of memory to another that is overlapping.
This was found by running Asterisk under valgrind. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78829 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -2275,11 +2275,11 @@ static char *message_template_parse_emailbody(const char *configuration)
|
|||||||
int len = strlen("\n");
|
int len = strlen("\n");
|
||||||
switch (tmpwrite[1]) {
|
switch (tmpwrite[1]) {
|
||||||
case 'n':
|
case 'n':
|
||||||
strncpy(tmpwrite+len, tmpwrite+2, strlen(tmpwrite+2)+1);
|
memmove(tmpwrite + len, tmpwrite + 2, strlen(tmpwrite + 2) + 1);
|
||||||
strncpy(tmpwrite, "\n", len);
|
strncpy(tmpwrite, "\n", len);
|
||||||
break;
|
break;
|
||||||
case 't':
|
case 't':
|
||||||
strncpy(tmpwrite+len, tmpwrite+2, strlen(tmpwrite+2)+1);
|
memmove(tmpwrite + len, tmpwrite + 2, strlen(tmpwrite + 2) + 1);
|
||||||
strncpy(tmpwrite, "\t", len);
|
strncpy(tmpwrite, "\t", len);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
Reference in New Issue
Block a user