diff options
author | Rainer Gerhards <rgerhards@adiscon.com> | 2010-04-09 13:00:56 +0200 |
---|---|---|
committer | Rainer Gerhards <rgerhards@adiscon.com> | 2010-04-09 13:00:56 +0200 |
commit | 8f0a8076cc8194036dbd4edca1c2c30a7822dd09 (patch) | |
tree | a7fd5bacf8d80fff628421186662d91705bdb8f1 /runtime/debug.c | |
parent | c1e3a032b447487ced9873b98a015046778d2b04 (diff) | |
parent | 87a957b0f5686ec3a50c98f3d1cf3019b636e700 (diff) | |
download | rsyslog-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.c | 15 |
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); |