summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2011-04-21 11:37:26 +0200
committerRainer Gerhards <rgerhards@adiscon.com>2011-04-21 11:37:26 +0200
commit82fa17ae5621849790eb39ed046d58333ede347c (patch)
tree2774719e59a9e9f581f04a5d2796028c666a1982 /tools
parent28e750eebd8ccb5655bdc18693b3b7c9d9ad826b (diff)
downloadrsyslog-82fa17ae5621849790eb39ed046d58333ede347c.tar.gz
rsyslog-82fa17ae5621849790eb39ed046d58333ede347c.tar.xz
rsyslog-82fa17ae5621849790eb39ed046d58333ede347c.zip
step: begun to create a "load" interface in rsconf
Diffstat (limited to 'tools')
-rw-r--r--tools/syslogd.c42
1 files changed, 23 insertions, 19 deletions
diff --git a/tools/syslogd.c b/tools/syslogd.c
index e0e5868b..1cf0b894 100644
--- a/tools/syslogd.c
+++ b/tools/syslogd.c
@@ -563,7 +563,7 @@ logmsgInternal(int iErr, int pri, uchar *msg, int flags)
* permits us to process unmodified config files which otherwise contain a
* supressor statement.
*/
- if(((Debug == DEBUG_FULL || NoFork) && ourConf->globals.bErrMsgToStderr) || iConfigVerify) {
+ if(((Debug == DEBUG_FULL || NoFork) && runConf->globals.bErrMsgToStderr) || iConfigVerify) {
if(LOG_PRI(pri) == LOG_ERR)
fprintf(stderr, "rsyslogd: %s\n", msg);
}
@@ -809,7 +809,7 @@ DEFFUNC_llExecFunc(flushRptdMsgsActions)
static void
doFlushRptdMsgs(void)
{
- ruleset.IterateAllActions(ourConf, flushRptdMsgsActions, NULL);
+ ruleset.IterateAllActions(runConf, flushRptdMsgsActions, NULL);
}
@@ -1020,7 +1020,7 @@ freeAllDynMemForTermination(void)
static inline void
destructAllActions(void)
{
- ruleset.DestructAllActions(ourConf);
+ ruleset.DestructAllActions(runConf);
bHaveMainQueue = 0; // flag that internal messages need to be temporarily stored
}
@@ -1058,7 +1058,8 @@ die(int sig)
thrdTerminateAll();
/* and THEN send the termination log message (see long comment above) */
- if(sig && ourConf->globals.bLogStatusMsgs) {
+dbgprintf("XXXX: runConf %p\n", runConf);
+ if(sig && runConf->globals.bLogStatusMsgs) {
(void) snprintf(buf, sizeof(buf) / sizeof(char),
" [origin software=\"rsyslogd\" " "swVersion=\"" VERSION \
"\" x-pid=\"%d\" x-info=\"http://www.rsyslog.com\"]" " exiting on signal %d.",
@@ -1085,7 +1086,7 @@ die(int sig)
* ourselfs, this makes finding memory leaks a lot
* easier.
*/
- tplDeleteAll(ourConf);
+ tplDeleteAll(runConf);
/* de-init some modules */
modExitIminternal();
@@ -1598,11 +1599,7 @@ init(void)
DEFiRet;
DBGPRINTF("rsyslog %s - called init()\n", VERSION);
-
- /* construct the default ruleset */
- ruleset.Construct(&pRuleset);
- ruleset.SetName(ourConf, pRuleset, UCHAR_CONSTANT("RSYSLOG_DefaultRuleset"));
- ruleset.ConstructFinalize(ourConf, pRuleset);
+#if 1
/* open the configuration file */
localRet = conf.processConfFile(ourConf, ConfFile);
@@ -1646,6 +1643,7 @@ init(void)
}
ruleset.AddRule(ourConf, ruleset.GetCurrent(ourConf), &pRule);
}
+#endif
legacyOptsHook();
@@ -1721,6 +1719,7 @@ init(void)
sigAct.sa_handler = sighup_handler;
sigaction(SIGHUP, &sigAct, NULL);
+ CHKiRet(rsconf.Activate(ourConf));
DBGPRINTF(" started.\n");
/* we now generate the startup message. It now includes everything to
@@ -2187,7 +2186,7 @@ static rsRetVal mainThread()
CHKiRet(init());
if(Debug && debugging_on) {
- DBGPRINTF("Debugging enabled, SIGUSR1 to turn off debugging.\n");
+ dbgprintf("Debugging enabled, SIGUSR1 to turn off debugging.\n");
}
/* Send a signal to the parent so it can terminate.
@@ -2711,9 +2710,6 @@ int realMain(int argc, char **argv)
for(p = LocalDomain ; *p ; p++)
*p = (char)tolower((int)*p);
- /* we need to init the config object first! */
- CHKiRet(rsconf.Construct(&ourConf));
-
/* we now have our hostname and can set it inside the global vars.
* TODO: think if all of this would better be a runtime function
* rgerhards, 2008-04-17
@@ -2729,11 +2725,6 @@ int realMain(int argc, char **argv)
exit(1); /* "good" exit, leaving at init for fatal error */
}
- if((iRet = loadBuildInModules(ourConf)) != RS_RET_OK) {
- fprintf(stderr, "fatal error: could not activate built-in modules. Error code %d.\n",
- iRet);
- exit(1); /* "good" exit, leaving at init for fatal error */
- }
/* END core initializations - we now come back to carrying out command line options*/
@@ -2878,11 +2869,24 @@ int realMain(int argc, char **argv)
if(iRet != RS_RET_END_OF_LINKEDLIST)
FINALIZE;
+ CHKiRet(rsconf.Load(&ourConf, ConfFile));
+
+
+
+ /* begin config load */
+ if((iRet = loadBuildInModules(ourConf)) != RS_RET_OK) {
+ fprintf(stderr, "fatal error: could not activate built-in modules. Error code %d.\n",
+ iRet);
+ exit(1); /* "good" exit, leaving at init for fatal error */
+ }
if(iConfigVerify) {
fprintf(stderr, "rsyslogd: version %s, config validation run (level %d), master config %s\n",
VERSION, iConfigVerify, ConfFile);
}
+
+
+
if(bChDirRoot) {
if(chdir("/") != 0)
fprintf(stderr, "Can not do 'cd /' - still trying to run\n");