summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--runtime/conf.c2
-rw-r--r--runtime/rsyslog.h1
-rw-r--r--tools/syslogd.c2
3 files changed, 3 insertions, 2 deletions
diff --git a/runtime/conf.c b/runtime/conf.c
index 37716f88..55eb9800 100644
--- a/runtime/conf.c
+++ b/runtime/conf.c
@@ -484,7 +484,7 @@ finalize_it:
}
if(bHadAnError && (iRet == RS_RET_OK)) { /* a bit dirty, enhance in future releases */
- iRet = RS_RET_ERR;
+ iRet = RS_RET_NONFATAL_CONFIG_ERR;
}
RETiRet;
}
diff --git a/runtime/rsyslog.h b/runtime/rsyslog.h
index 032d8c04..a4a8a204 100644
--- a/runtime/rsyslog.h
+++ b/runtime/rsyslog.h
@@ -258,6 +258,7 @@ enum rsRetVal_ /** return value. All methods return this if not specified oth
RS_RET_FUNC_MISSING_EXPR = -2111, /**< no expression after comma in function call (rainerscript) */
RS_RET_INVLD_NBR_ARGUMENTS = -2112, /**< invalid number of arguments for function call (rainerscript) */
RS_RET_INVLD_FUNC = -2113, /**< invalid function name for function call (rainerscript) */
+ RS_RET_NONFATAL_CONFIG_ERR = -2123, /**< non-fatal error during config processing */
/* RainerScript error messages (range 1000.. 1999) */
RS_RET_SYSVAR_NOT_FOUND = 1001, /**< system variable could not be found (maybe misspelled) */
diff --git a/tools/syslogd.c b/tools/syslogd.c
index 4444bf6b..2ff868a9 100644
--- a/tools/syslogd.c
+++ b/tools/syslogd.c
@@ -2388,7 +2388,7 @@ init(void)
bHadConfigErr = 1;
}
- if(localRet != RS_RET_OK || iNbrActions == 0) {
+ if((localRet != RS_RET_OK && localRet != RS_RET_NONFATAL_CONFIG_ERR) || iNbrActions == 0) {
/* rgerhards: this code is executed to set defaults when the
* config file could not be opened. We might think about
* abandoning the run in this case - but this, too, is not