From: Russell Bryant Date: Thu, 9 Aug 2007 20:07:59 +0000 (+0000) Subject: Don't use strncpy for moving a chunk of memory to another that is overlapping. X-Git-Tag: 1.6.0-beta1~3^2~1761 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=dc7af7d5fe1c55b97bbbef65ea10160ea0b718a4;p=thirdparty%2Fasterisk.git 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 --- diff --git a/apps/app_minivm.c b/apps/app_minivm.c index 14729c8d13..a868bac831 100644 --- a/apps/app_minivm.c +++ b/apps/app_minivm.c @@ -2275,11 +2275,11 @@ static char *message_template_parse_emailbody(const char *configuration) int len = strlen("\n"); switch (tmpwrite[1]) { case 'n': - strncpy(tmpwrite+len, tmpwrite+2, strlen(tmpwrite+2)+1); + memmove(tmpwrite + len, tmpwrite + 2, strlen(tmpwrite + 2) + 1); strncpy(tmpwrite, "\n", len); break; case 't': - strncpy(tmpwrite+len, tmpwrite+2, strlen(tmpwrite+2)+1); + memmove(tmpwrite + len, tmpwrite + 2, strlen(tmpwrite + 2) + 1); strncpy(tmpwrite, "\t", len); break; default: