summaryrefslogtreecommitdiffstats
path: root/syslogd.c
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2007-07-20 08:25:55 +0000
committerRainer Gerhards <rgerhards@adiscon.com>2007-07-20 08:25:55 +0000
commitf4eb0770df0a5b43a14c37215dfa0ebee204abb0 (patch)
tree1cef5ece6583b41ef52a2a1e945222ac0517d37c /syslogd.c
parent69b8abd0d4ed6e9b1b74543e7e76877f53a1451b (diff)
downloadrsyslog-f4eb0770df0a5b43a14c37215dfa0ebee204abb0.tar.gz
rsyslog-f4eb0770df0a5b43a14c37215dfa0ebee204abb0.tar.xz
rsyslog-f4eb0770df0a5b43a14c37215dfa0ebee204abb0.zip
added the capability to continue trying to write log files when the file
system is full. Functionality based on patch by Martin Schulze to sysklogd package.
Diffstat (limited to 'syslogd.c')
-rw-r--r--syslogd.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/syslogd.c b/syslogd.c
index 7b23a3da..90700a41 100644
--- a/syslogd.c
+++ b/syslogd.c
@@ -5392,6 +5392,13 @@ again:
if (f->f_type == F_PIPE && e == EAGAIN)
return;
+ /* If the filesystem is filled up, just ignore
+ * it for now and continue writing when possible
+ * based on patch for sysklogd by Martin Schulze on 2007-05-24
+ */
+ if (f->f_type == F_FILE && e == ENOSPC)
+ return;
+
(void) close(f->f_file);
/*
* Check for EBADF on TTY's due to vhangup()