diff options
-rw-r--r-- | ChangeLog | 11 | ||||
-rw-r--r-- | runtime/modules.c | 2 | ||||
-rw-r--r-- | tools/omfile.c | 7 | ||||
-rw-r--r-- | tools/syslogd.c | 2 |
4 files changed, 18 insertions, 4 deletions
@@ -22,10 +22,16 @@ Version 5.3.0 [DEVEL] (rgerhards), 2009-09-14 rather infrequently on a busy system) --------------------------------------------------------------------------- Version 5.1.6 [v5-beta] (rgerhards), 2009-09-?? +- feature imports from v4.5.6 - bugfixes imported from 4.5.4: * bugfix: potential segfault in stream writer on destruction * bugfix: potential race in object loader (obj.c) during use/release * bugfixes: potential problems in out file zip writer +- included some important fixes from 4.4.2: + * bugfix: invalid handling of zero-sized messages + * bugfix: zero-sized UDP messages are no longer processed + * bugfix: random data could be appended to message + * bugfix: reverse lookup reduction logic in imudp do DNS queries too often --------------------------------------------------------------------------- Version 5.1.5 [v5-beta] (rgerhards), 2009-09-11 - added new config option $ActionWriteAllMarkMessages @@ -171,6 +177,11 @@ Version 4.5.6 [v4-beta] (rgerhards), 2009-09-?? Version 4.5.5 [v4-beta] (rgerhards), 2009-09-?? - added $InputTCPServerNotifyOnConnectionClose config directive see doc for details +- bugfix: invalid storage class selected for some size config parameters. + This resulted in wrong values. The most prominent victim was the + directory creation mode, which was set to zero in some cases. For + details, see related blog post: + http://blog.gerhards.net/2009/10/another-note-on-hard-to-find-bugs.html --------------------------------------------------------------------------- Version 4.5.4 [v4-beta] (rgerhards), 2009-09-29 - bugfix: potential segfault in stream writer on destruction diff --git a/runtime/modules.c b/runtime/modules.c index eee3b46e..bdb15e7f 100644 --- a/runtime/modules.c +++ b/runtime/modules.c @@ -425,7 +425,7 @@ doModInit(rsRetVal (*modInit)(int, int*, rsRetVal(**)(), rsRetVal(*)(), modInfo_ * can never change in the lifetime of an module. -- rgerhards, 2007-12-14 */ CHKiRet((*pNew->modQueryEtryPt)((uchar*)"getType", &modGetType)); - CHKiRet((iRet = (*modGetType)(&pNew->eType)) != RS_RET_OK); + CHKiRet((*modGetType)(&pNew->eType)); dbgprintf("module of type %d being loaded.\n", pNew->eType); /* OK, we know we can successfully work with the module. So we now fill the diff --git a/tools/omfile.c b/tools/omfile.c index eaffa70e..65140ac4 100644 --- a/tools/omfile.c +++ b/tools/omfile.c @@ -66,6 +66,7 @@ #include "errmsg.h" #include "stream.h" #include "unicode-helper.h" +#include "atomic.h" MODULE_TYPE_OUTPUT @@ -103,7 +104,7 @@ static int bCreateDirs; /* auto-create directories for dynaFiles: 0 - no, 1 - ye static int bEnableSync = 0;/* enable syncing of files (no dash in front of pathname in conf): 0 - no, 1 - yes */ static int iZipLevel = 0; /* zip compression mode (0..9 as usual) */ static bool bFlushOnTXEnd = 1;/* flush write buffers when transaction has ended? */ -static int iIOBufSize = IOBUF_DFLT_SIZE; /* size of an io buffer */ +static int64 iIOBufSize = IOBUF_DFLT_SIZE; /* size of an io buffer */ static int iFlushInterval = FLUSH_INTRVL_DFLT; /* how often flush the output buffer on inactivity? */ static uchar *pszTplName = NULL; /* name of the default template to use */ /* end globals for default values */ @@ -156,6 +157,7 @@ CODESTARTdbgPrintInstInfo "\tfile owner %d, group %d\n" "\tdirectory owner %d, group %d\n" "\tforce chown() for all files: %s\n" + "\tdir create mode 0%3.3o, file create mode 0%3.3o\n" "\tfail if owner/group can not be set: %s\n", pData->f_fname, pData->iDynaFileCacheSize, @@ -163,6 +165,7 @@ CODESTARTdbgPrintInstInfo pData->fileUID, pData->fileGID, pData->dirUID, pData->dirGID, pData->bForceChown ? "yes" : "no", + pData->fDirCreateMode, pData->fCreateMode, pData->bFailOnChown ? "yes" : "no" ); } else { /* regular file */ @@ -705,7 +708,7 @@ CODESTARTparseSelectorAct pData->dirGID = dirGID; pData->iZipLevel = iZipLevel; pData->bFlushOnTXEnd = bFlushOnTXEnd; - pData->iIOBufSize = iIOBufSize; + pData->iIOBufSize = (int) iIOBufSize; pData->iFlushInterval = iFlushInterval; if(pData->bDynamicName == 0) { diff --git a/tools/syslogd.c b/tools/syslogd.c index 608fb5df..0f4f8a23 100644 --- a/tools/syslogd.c +++ b/tools/syslogd.c @@ -1788,7 +1788,7 @@ static void doexit() /* set the maximum message size */ -static rsRetVal setMaxMsgSize(void __attribute__((unused)) *pVal, int iNewVal) +static rsRetVal setMaxMsgSize(void __attribute__((unused)) *pVal, long iNewVal) { return glbl.SetMaxLine(iNewVal); } |