summaryrefslogtreecommitdiffstats
path: root/runtime/debug.c
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2010-04-09 13:00:56 +0200
committerRainer Gerhards <rgerhards@adiscon.com>2010-04-09 13:00:56 +0200
commit8f0a8076cc8194036dbd4edca1c2c30a7822dd09 (patch)
treea7fd5bacf8d80fff628421186662d91705bdb8f1 /runtime/debug.c
parentc1e3a032b447487ced9873b98a015046778d2b04 (diff)
parent87a957b0f5686ec3a50c98f3d1cf3019b636e700 (diff)
downloadrsyslog-8f0a8076cc8194036dbd4edca1c2c30a7822dd09.tar.gz
rsyslog-8f0a8076cc8194036dbd4edca1c2c30a7822dd09.tar.xz
rsyslog-8f0a8076cc8194036dbd4edca1c2c30a7822dd09.zip
Merge branch 'beta' into master
Conflicts: ChangeLog configure.ac plugins/imudp/imudp.c runtime/stream.h tests/Makefile.am tests/diag.sh tools/omfile.c
Diffstat (limited to 'runtime/debug.c')
-rw-r--r--runtime/debug.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/runtime/debug.c b/runtime/debug.c
index 38857122..e7fdf990 100644
--- a/runtime/debug.c
+++ b/runtime/debug.c
@@ -944,7 +944,7 @@ void
dbgoprint(obj_t *pObj, char *fmt, ...)
{
va_list ap;
- char pszWriteBuf[1024];
+ char pszWriteBuf[32*1024];
size_t lenWriteBuf;
if(!(Debug && debugging_on))
@@ -983,14 +983,13 @@ dbgprintf(char *fmt, ...)
va_start(ap, fmt);
lenWriteBuf = vsnprintf(pszWriteBuf, sizeof(pszWriteBuf), fmt, ap);
va_end(ap);
-
if(lenWriteBuf >= sizeof(pszWriteBuf)) {
- /* if we need to truncate, do it in a somewhat useful way... */
- pszWriteBuf[sizeof(pszWriteBuf) - 5] = '!';
- pszWriteBuf[sizeof(pszWriteBuf) - 4] = '.';
- pszWriteBuf[sizeof(pszWriteBuf) - 3] = '.';
- pszWriteBuf[sizeof(pszWriteBuf) - 2] = '.';
- pszWriteBuf[sizeof(pszWriteBuf) - 1] = '\n';
+ /* prevent buffer overrruns and garbagge display */
+ pszWriteBuf[sizeof(pszWriteBuf) - 5] = '.';
+ pszWriteBuf[sizeof(pszWriteBuf) - 4] = '.';
+ pszWriteBuf[sizeof(pszWriteBuf) - 3] = '.';
+ pszWriteBuf[sizeof(pszWriteBuf) - 2] = '\n';
+ pszWriteBuf[sizeof(pszWriteBuf) - 1] = '\0';
lenWriteBuf = sizeof(pszWriteBuf);
}
dbgprint(NULL, pszWriteBuf, lenWriteBuf);