summaryrefslogtreecommitdiffstats
path: root/runtime/modules.c
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2008-11-18 11:40:23 +0100
committerRainer Gerhards <rgerhards@adiscon.com>2008-11-18 11:40:23 +0100
commita5417f16044d7d56dbceeea09e25ba3e8c47cc01 (patch)
treede086d9f0baa496f3743b39e4c49b05edab1a303 /runtime/modules.c
parentba201a941435bc5fec2c333155e1a8e16c4a9c05 (diff)
parent704a1145d64532df36624a3c9850b0c86f38f76f (diff)
downloadrsyslog-a5417f16044d7d56dbceeea09e25ba3e8c47cc01.tar.gz
rsyslog-a5417f16044d7d56dbceeea09e25ba3e8c47cc01.tar.bz2
rsyslog-a5417f16044d7d56dbceeea09e25ba3e8c47cc01.zip
Merge branch 'nextmaster'
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;