]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Hack to get our extended log fmt specified working for DEBUG() and friends
authorArran Cudbard-Bell <a.cudbardb@freeradius.org>
Thu, 13 Apr 2017 17:27:35 +0000 (13:27 -0400)
committerArran Cudbard-Bell <a.cudbardb@freeradius.org>
Tue, 18 Apr 2017 00:50:52 +0000 (20:50 -0400)
src/lib/util/log.c

index 125a0c0adbc9b62fe189e28b4ac71d21f16040b3..da39d208befd4e150e53b3250f60a29aede51e05 100644 (file)
@@ -275,7 +275,16 @@ int fr_vlog(fr_log_t const *log, log_type_t type, char const *msg, va_list ap)
                }
        }
 
-       if (len < sizeof(buffer)) len += vsnprintf(buffer + len, sizeof(buffer) - len - 1, msg, ap);
+       if (len < sizeof(buffer)) {
+               char *tmp;
+
+               /*
+                *      Fixme - All this code should be reworked to use a dynamic buffer
+                */
+               tmp = fr_vasprintf(NULL, msg, ap);
+               len += strlcpy(buffer + len, tmp, sizeof(buffer) - len);
+               talloc_free(tmp);
+       }
 
        /*
         *      Filter out control chars and non UTF8 chars