mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-25 15:08:53 +00:00
Use strncat() instead of an sprintf() in which source and target buffers overlap
http://lists.digium.com/pipermail/asterisk-dev/2008-December/035919.html git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@166772 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -794,8 +794,9 @@ void misdn_cfg_get_config_string (int port, enum misdn_cfg_elements elem, char*
|
|||||||
else
|
else
|
||||||
iter = port_cfg[0][place].ml;
|
iter = port_cfg[0][place].ml;
|
||||||
if (iter) {
|
if (iter) {
|
||||||
for (; iter; iter = iter->next)
|
for (; iter; iter = iter->next) {
|
||||||
sprintf(tempbuf, "%s%s, ", tempbuf, iter->msn);
|
strncat(tempbuf, iter->msn, sizeof(tempbuf) - strlen(tempbuf) - 1);
|
||||||
|
}
|
||||||
tempbuf[strlen(tempbuf)-2] = 0;
|
tempbuf[strlen(tempbuf)-2] = 0;
|
||||||
}
|
}
|
||||||
snprintf(buf, bufsize, " -> msns: %s", *tempbuf ? tempbuf : "none");
|
snprintf(buf, bufsize, " -> msns: %s", *tempbuf ? tempbuf : "none");
|
||||||
|
Reference in New Issue
Block a user