aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--usr.sbin/newsyslog/newsyslog.c10
-rw-r--r--usr.sbin/newsyslog/tests/legacy_test.sh24
2 files changed, 29 insertions, 5 deletions
diff --git a/usr.sbin/newsyslog/newsyslog.c b/usr.sbin/newsyslog/newsyslog.c
index c45c89f0f727..e454d6e398ed 100644
--- a/usr.sbin/newsyslog/newsyslog.c
+++ b/usr.sbin/newsyslog/newsyslog.c
@@ -105,7 +105,7 @@ __FBSDID("$FreeBSD$");
#define COMPRESS_SUFFIX_ZST ".zst"
#endif
-#define COMPRESS_SUFFIX_MAXLEN MAX(MAX(sizeof(COMPRESS_SUFFIX_GZ),sizeof(COMPRESS_SUFFIX_BZ2)),sizeof(COMPRESS_SUFFIX_XZ))
+#define COMPRESS_SUFFIX_MAXLEN MAX(MAX(MAX(sizeof(COMPRESS_SUFFIX_GZ),sizeof(COMPRESS_SUFFIX_BZ2)),sizeof(COMPRESS_SUFFIX_XZ)),sizeof(COMPRESS_SUFFIX_ZST))
/*
* Compression types
@@ -2027,7 +2027,7 @@ do_zipwork(struct zipwork_entry *zwork)
char zresult[MAXPATHLEN];
char command[BUFSIZ];
char **args;
- int c;
+ int c, i;
assert(zwork != NULL);
pgm_path = NULL;
@@ -2043,10 +2043,10 @@ do_zipwork(struct zipwork_entry *zwork)
(void) strlcat(zresult,
compress_type[c].suffix, sizeof(zresult));
/* the first argument is always NULL, skip it */
- for (c = 1; c < ARGS_NUM; c++) {
- if (compress_type[c].args[c] == NULL)
+ for (i = 1; i < ARGS_NUM; i++) {
+ if (compress_type[c].args[i] == NULL)
break;
- args[c] = compress_type[c].args[c];
+ args[i] = compress_type[c].args[i];
}
break;
}
diff --git a/usr.sbin/newsyslog/tests/legacy_test.sh b/usr.sbin/newsyslog/tests/legacy_test.sh
index 24791ecda256..97f3821c3e22 100644
--- a/usr.sbin/newsyslog/tests/legacy_test.sh
+++ b/usr.sbin/newsyslog/tests/legacy_test.sh
@@ -498,6 +498,12 @@ tests_normal_rotate ".gz"
echo "$LOGFPATH 640 3 * @T00 NCJ" > newsyslog.conf
tests_normal_rotate ".bz2"
+echo "$LOGFPATH 640 3 * @T00 NCX" > newsyslog.conf
+tests_normal_rotate ".xz"
+
+echo "$LOGFPATH 640 3 * @T00 NCY" > newsyslog.conf
+tests_normal_rotate ".zst"
+
# Normal, archive dir
echo "$LOGFPATH 640 3 * @T00 NC" > newsyslog.conf
tests_normal_rotate "" "${TMPDIR}/alog/"
@@ -508,6 +514,12 @@ tests_normal_rotate ".gz" "${TMPDIR}/alog/"
echo "$LOGFPATH 640 3 * @T00 NCJ" > newsyslog.conf
tests_normal_rotate ".bz2" "${TMPDIR}/alog/"
+echo "$LOGFPATH 640 3 * @T00 NCX" > newsyslog.conf
+tests_normal_rotate ".xz" "${TMPDIR}/alog/"
+
+echo "$LOGFPATH 640 3 * @T00 NCY" > newsyslog.conf
+tests_normal_rotate ".zst" "${TMPDIR}/alog/"
+
# Time based, no archive dir
echo "$LOGFPATH 640 3 * @T00 NC" > newsyslog.conf
tests_time_rotate
@@ -518,6 +530,12 @@ tests_time_rotate "gz" ""
echo "$LOGFPATH 640 3 * @T00 NCJ" > newsyslog.conf
tests_time_rotate "bz2" ""
+echo "$LOGFPATH 640 3 * @T00 NCX" > newsyslog.conf
+tests_time_rotate "xz" ""
+
+echo "$LOGFPATH 640 3 * @T00 NCY" > newsyslog.conf
+tests_time_rotate "zst" ""
+
# Time based, archive dir
echo "$LOGFPATH 640 3 * @T00 NC" > newsyslog.conf
tests_time_rotate "" "${TMPDIR}/alog/"
@@ -528,6 +546,12 @@ tests_time_rotate "gz" "${TMPDIR}/alog/"
echo "$LOGFPATH 640 3 * @T00 NCJ" > newsyslog.conf
tests_time_rotate "bz2" "${TMPDIR}/alog/"
+echo "$LOGFPATH 640 3 * @T00 NCX" > newsyslog.conf
+tests_time_rotate "xz" "${TMPDIR}/alog/"
+
+echo "$LOGFPATH 640 3 * @T00 NCY" > newsyslog.conf
+tests_time_rotate "zst" "${TMPDIR}/alog/"
+
# RFC-5424; Normal, no archive dir
echo "$LOGFPATH5424 640 3 * @T00 NCT" > newsyslog.conf
echo "$LOGFPATH 640 3 * @T00 NC" >> newsyslog.conf