From df33322f9fb3fdf8d2fc42f635ad64f65a70f458 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Su=C5=A1nik?= Date: Tue, 8 May 2018 14:07:57 +0200 Subject: [PATCH] Added test to prove bug when specifying journal flags to systemd backend --- fail2ban/tests/servertestcase.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/fail2ban/tests/servertestcase.py b/fail2ban/tests/servertestcase.py index 59dfef50..295b2d31 100644 --- a/fail2ban/tests/servertestcase.py +++ b/fail2ban/tests/servertestcase.py @@ -803,6 +803,28 @@ class Transmitter(TransmitterBase): result = self.transm.proceed( ["set", jailName, "deljournalmatch", value]) self.assertTrue(isinstance(result[1], ValueError)) + + def testJournalFlagsMatch(self): + if not filtersystemd: # pragma: no cover + raise unittest.SkipTest("systemd python interface not available") + self.assertTrue(True) + jailName = "TestJail3" + self.server.addJail(jailName, "systemd[journalflags=2]") + values = [ + "_SYSTEMD_UNIT=sshd.service", + "TEST_FIELD1=ABC", + "_HOSTNAME=example.com", + ] + for n, value in enumerate(values): + self.assertEqual( + self.transm.proceed( + ["set", jailName, "addjournalmatch", value]), + (0, [[val] for val in values[:n+1]])) + for n, value in enumerate(values): + self.assertEqual( + self.transm.proceed( + ["set", jailName, "deljournalmatch", value]), + (0, [[val] for val in values[n+1:]])) class TransmitterLogging(TransmitterBase):