summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/log.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/log.c b/src/log.c
index edb709f..94d3872 100644
--- a/src/log.c
+++ b/src/log.c
@@ -259,11 +259,20 @@ int setup_logging (void)
openlog ("tinyproxy", LOG_PID, LOG_USER);
} else {
if (open_log_file (config.logf_name) < 0) {
- fprintf (stderr,
- "%s: Could not create log file.\n", PACKAGE);
- goto done;
+ /*
+ * If opening the log file fails, we try
+ * to fall back to syslog logging...
+ */
+ config.syslog = TRUE;
+
+ log_message (LOG_CRIT, "ERROR: Could not create log "
+ "file %s: %s.\n", PACKAGE,
+ config.logf_name, strerror (errno));
+ log_message (LOG_CRIT,
+ "Falling back to syslog logging\n");
+ } else {
+ config.syslog = FALSE;
}
- config.syslog = FALSE; /* disable syslog */
}
logging_initialized = TRUE;