aboutsummaryrefslogtreecommitdiff
path: root/src/rc
diff options
context:
space:
mode:
authorDoug Freed <dwfreed@mtu.edu>2016-07-24 02:27:53 +0000
committerDoug Freed <dwfreed@mtu.edu>2016-07-24 02:27:53 +0000
commit3adb8fb389caaafbed1be13c5ac4d96214c8eed3 (patch)
treedf33bc43d5eef566eccdd8c926f345fe1570f3a1 /src/rc
parent8927a37fb790e718c956376242a532ab9d1755e7 (diff)
rc-logger: refuse to cat TMPLOG into itself
This prevents an infinite loop in case somebody decides to set rc_log_path to match TMPLOG.
Diffstat (limited to 'src/rc')
-rw-r--r--src/rc/rc-logger.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/rc/rc-logger.c b/src/rc/rc-logger.c
index 06f33980..b4bd0eae 100644
--- a/src/rc/rc-logger.c
+++ b/src/rc/rc-logger.c
@@ -247,6 +247,10 @@ rc_logger_open(const char *level)
logfile = rc_conf_value("rc_log_path");
if (logfile == NULL)
logfile = DEFAULTLOG;
+ if (!strcmp(logfile, TMPLOG)) {
+ eerror("Cowardly refusing to concatenate a logfile into itself.");
+ eerrorx("Please change rc_log_path to something other than %s to get rid of this message", TMPLOG);
+ }
if ((plog = fopen(logfile, "ae"))) {
if ((log = fopen(TMPLOG, "re"))) {