summaryrefslogtreecommitdiffstats
path: root/runtime/modules.c
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2008-10-23 14:46:47 +0200
committerRainer Gerhards <rgerhards@adiscon.com>2008-10-23 14:46:47 +0200
commit6334d335d89ae5df344f833c5095e9dea2abf6fb (patch)
tree9cd1a8de9e3b94e72b38b0612ba4d90cadccd81d /runtime/modules.c
parentcf38fc81759b01af5125b1a05e0d6fe8e2e1bc21 (diff)
downloadrsyslog-6334d335d89ae5df344f833c5095e9dea2abf6fb.tar.gz
rsyslog-6334d335d89ae5df344f833c5095e9dea2abf6fb.tar.xz
rsyslog-6334d335d89ae5df344f833c5095e9dea2abf6fb.zip
added configuration directive "HUPisRestart"
...which enables to configure HUP to be either a full restart or "just" a leightweight way to close open files
Diffstat (limited to 'runtime/modules.c')
-rw-r--r--runtime/modules.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/runtime/modules.c b/runtime/modules.c
index d5730ede..169d234b 100644
--- a/runtime/modules.c
+++ b/runtime/modules.c
@@ -347,6 +347,7 @@ static rsRetVal
doModInit(rsRetVal (*modInit)(int, int*, rsRetVal(**)(), rsRetVal(*)(), modInfo_t*), uchar *name, void *pModHdlr)
{
DEFiRet;
+ rsRetVal localRet;
modInfo_t *pNew = NULL;
rsRetVal (*modGetType)(eModType_t *pType);
@@ -391,6 +392,10 @@ doModInit(rsRetVal (*modInit)(int, int*, rsRetVal(**)(), rsRetVal(*)(), modInfo_
CHKiRet((*pNew->modQueryEtryPt)((uchar*)"parseSelectorAct", &pNew->mod.om.parseSelectorAct));
CHKiRet((*pNew->modQueryEtryPt)((uchar*)"isCompatibleWithFeature", &pNew->isCompatibleWithFeature));
CHKiRet((*pNew->modQueryEtryPt)((uchar*)"tryResume", &pNew->tryResume));
+ /* try load optional interfaces */
+ localRet = (*pNew->modQueryEtryPt)((uchar*)"doHUP", &pNew->doHUP);
+ if(localRet != RS_RET_OK && localRet != RS_RET_MODULE_ENTRY_POINT_NOT_FOUND)
+ ABORT_FINALIZE(localRet);
break;
case eMOD_LIB:
break;