summaryrefslogtreecommitdiffstats
path: root/omshell.c
diff options
context:
space:
mode:
Diffstat (limited to 'omshell.c')
-rw-r--r--omshell.c18
1 files changed, 15 insertions, 3 deletions
diff --git a/omshell.c b/omshell.c
index 0718e66d..6b67dff4 100644
--- a/omshell.c
+++ b/omshell.c
@@ -40,10 +40,20 @@
#include "omshell.h"
+/* query feature compatibility
+ */
+static rsRetVal isCompatibleWithFeature(syslogFeature eFeat)
+{
+ if(eFeat == sFEATURERepeatedMsgReduction)
+ return RS_RET_OK;
+
+ return RS_RET_INCOMPATIBLE;
+}
+
+
/* call the shell action
- * returns 0 if it succeeds, something else otherwise
*/
-int doActionShell(selector_t *f)
+static rsRetVal doActionShell(selector_t *f)
{
uchar *psz;
@@ -58,7 +68,7 @@ int doActionShell(selector_t *f)
if(execProg((uchar*) f->f_un.f_file.f_fname, 1, (uchar*) psz) == 0)
logerrorSz("Executing program '%s' failed", f->f_un.f_file.f_fname);
- return 0;
+ return RS_RET_OK;
}
@@ -108,6 +118,8 @@ static rsRetVal queryEtryPt(uchar *name, rsRetVal (**pEtryPoint)())
*pEtryPoint = doActionShell;
} else if(!strcmp((char*) name, "parseSelectorAct")) {
*pEtryPoint = parseSelectorAct;
+ } else if(!strcmp((char*) name, "isCompatibleWithFeature")) {
+ *pEtryPoint = isCompatibleWithFeature;
} /*else if(!strcmp((char*) name, "freeInstance")) {
*pEtryPoint = freeInstanceFile;
} */