Mercurial > hg > dhcpcd
changeset 87:8a1c2fd9e7e2 draft
copy the arg as vsyslog may not do its own copy and use strlcpy instead of strcpy
| author | Roy Marples <roy@marples.name> |
|---|---|
| date | Fri, 06 Apr 2007 12:30:16 +0000 |
| parents | 231c5353f0dd |
| children | 7c31bbcf079c |
| files | logger.c |
| diffstat | 1 files changed, 4 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/logger.c Thu Apr 05 18:11:05 2007 +0000 +++ b/logger.c Fri Apr 06 12:30:16 2007 +0000 @@ -98,15 +98,17 @@ if (level < LOG_DEBUG || level <= loglevel) { int len = strlen (logprefix); - char *fmt2 = xmalloc (strlen (fmt) + len + 1); + int fmt2len = strlen (fmt) + len + 1; + char *fmt2 = xmalloc (sizeof (char *) * fmt2len); char *pf = fmt2; memcpy (pf, logprefix, len); pf += len; - strcpy (pf, fmt); + strlcpy (pf, fmt, fmt2len - len); vsyslog (level, fmt2, p2); free (fmt2); } + va_end (p2); va_end (p); }
