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 da6026c5..510927a2 100644
--- a/runtime/conf.c
+++ b/runtime/conf.c
@@ -479,7 +479,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 70af8c4f..9ce58210 100644
--- a/runtime/rsyslog.h
+++ b/runtime/rsyslog.h
@@ -253,6 +253,7 @@ enum rsRetVal_ /** return value. All methods return this if not specified oth
RS_RET_ACCEPT_ERR = -2106, /**< error during accept() system call */
RS_RET_INVLD_TIME = -2107, /**< invalid timestamp (e.g. could not be parsed) */
RS_RET_CODE_ERR = -2109, /**< program code (internal) error */
+ 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 13eaede2..357f6699 100644
--- a/tools/syslogd.c
+++ b/tools/syslogd.c
@@ -2300,7 +2300,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