diff options
-rw-r--r-- | queue.h | 1 | ||||
-rw-r--r-- | syslogd.c | 16 |
2 files changed, 15 insertions, 2 deletions
@@ -111,6 +111,7 @@ rsRetVal queueDestruct(queue_t *pThis); rsRetVal queueEnqObj(queue_t *pThis, void *pUsr); rsRetVal queueStart(queue_t *pThis); rsRetVal queueSetMaxFileSize(queue_t *pThis, size_t iMaxFileSize); +rsRetVal queueSetFilePrefix(queue_t *pThis, uchar *pszPrefix, size_t iLenPrefix); rsRetVal queueConstruct(queue_t **ppThis, queueType_t qType, int iWorkerThreads, int iMaxQueueSize, rsRetVal (*pConsumer)(void*)); @@ -3360,9 +3360,21 @@ init(void) exit(1); } /* ... set some properties ... */ - CHKiRet_Hdlr(queueSetMaxFileSize(pMsgQueue, iMainMsgQueMaxFileSize)) { - logerrorInt("Invalid $MainMsgQueueMaxFileSize, error %d. Ignored, running with default setting", iRet); +# define setQPROP(func, directive, data) \ + CHKiRet_Hdlr(func(pMsgQueue, data)) { \ + logerrorInt("Invalid " #directive ", error %d. Ignored, running with default setting", iRet); \ } +# define setQPROPstr(func, directive, data) \ + CHKiRet_Hdlr(func(pMsgQueue, data, strlen((char*) data))) { \ + logerrorInt("Invalid " #directive ", error %d. Ignored, running with default setting", iRet); \ + } + + setQPROP(queueSetMaxFileSize, "$MainMsgQueueFileSize", iMainMsgQueMaxFileSize); + setQPROPstr(queueSetFilePrefix, "$MainMsgQueueFilePrefix", + (pszMainMsgQFilePrefix == NULL ? (uchar*) "mainq" : pszMainMsgQFilePrefix)); + +# undef setQPROP +# undef setQPROPstr /* ... and finally start the queue! */ CHKiRet_Hdlr(queueStart(pMsgQueue)) { |