summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--syslogd.c7
2 files changed, 12 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 74d6f43c..b66b9e0c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,5 @@
---------------------------------------------------------------------------
-Version 1.17.1 (RGer), 2007-07-??
+Version 1.17.1 (RGer), 2007-07-20
- fixed a bug that caused make install to install rsyslogd and rklogd under
the wrong names
- fixed bug that caused $AllowedSenders to handle IPv6 scopes incorrectly;
@@ -8,11 +8,14 @@ Version 1.17.1 (RGer), 2007-07-??
- minor code cleanup - thanks to Peter Vrabec for the patch
- fixed minimal memory leak on HUP (caused by templates)
thanks to varmojfekoj <varmojfekoj@gmail.com> for the patch
-- fixed another memory leak on HUPin and on exiting rsyslogd
+- fixed another memory leak on HUPing and on exiting rsyslogd
again thanks to varmojfekoj <varmojfekoj@gmail.com> for the patch
- code cleanup (removed compiler warnings)
- fixed portability bug in configure.ac - thanks to Bartosz Kuźma for patch
- moved msg object into its own file set
+- 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.
---------------------------------------------------------------------------
Version 1.17.0 (RGer), 2007-07-17
- added $RepeatedLineReduction config parameter
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()