svn commit: r244997 - head/usr.sbin/newsyslog
Mark Johnston
markj at FreeBSD.org
Thu Jan 3 16:14:52 UTC 2013
Author: markj
Date: Thu Jan 3 16:14:51 2013
New Revision: 244997
URL: http://svnweb.freebsd.org/changeset/base/244997
Log:
Make sure to update the mtime of a logfile after archiving it. This
ensures that the next rotation happens at the correct time when using
interval-based rotations.
PR: bin/174438
Reviewed by: gad
Approved by: rstone (co-mentor)
MFC after: 1 week
Modified:
head/usr.sbin/newsyslog/newsyslog.c
Modified: head/usr.sbin/newsyslog/newsyslog.c
==============================================================================
--- head/usr.sbin/newsyslog/newsyslog.c Thu Jan 3 16:12:48 2013 (r244996)
+++ head/usr.sbin/newsyslog/newsyslog.c Thu Jan 3 16:14:51 2013 (r244997)
@@ -1814,12 +1814,21 @@ do_rotate(const struct conf_entry *ent)
printf("\tcp %s %s\n", ent->log, file1);
else
printf("\tln %s %s\n", ent->log, file1);
+ printf("\ttouch %s\t\t"
+ "# Update mtime for 'when'-interval processing\n",
+ file1);
} else {
if (!(flags & CE_BINARY)) {
/* Report the trimming to the old log */
log_trim(ent->log, ent);
}
savelog(ent->log, file1);
+ /*
+ * Interval-based rotations are done using the mtime of
+ * the most recently archived log, so make sure it gets
+ * updated during a rotation.
+ */
+ utimes(file1, NULL);
}
change_attrs(file1, ent);
}
More information about the svn-src-all
mailing list