mirror of https://github.com/fail2ban/fail2ban
py3.12: silence warnings "invalid escape sequence"
parent
572582137c
commit
70aef2c3c6
|
@ -221,7 +221,7 @@ class Fail2banRegexTest(LogCaptureTestCase):
|
||||||
self.pruneLog()
|
self.pruneLog()
|
||||||
self.assertTrue(_test_exec(
|
self.assertTrue(_test_exec(
|
||||||
"-d", "^Epoch",
|
"-d", "^Epoch",
|
||||||
"1490349000 test failed.dns.ch", "^\s*test <F-ID>\S+</F-ID>"
|
"1490349000 test failed.dns.ch", r"^\s*test <F-ID>\S+</F-ID>"
|
||||||
))
|
))
|
||||||
self.assertLogged('Lines: 1 lines, 0 ignored, 1 matched, 0 missed', all=True)
|
self.assertLogged('Lines: 1 lines, 0 ignored, 1 matched, 0 missed', all=True)
|
||||||
self.assertNotLogged('Unable to find a corresponding IP address')
|
self.assertNotLogged('Unable to find a corresponding IP address')
|
||||||
|
@ -229,7 +229,7 @@ class Fail2banRegexTest(LogCaptureTestCase):
|
||||||
self.pruneLog()
|
self.pruneLog()
|
||||||
self.assertTrue(_test_exec(
|
self.assertTrue(_test_exec(
|
||||||
"-d", "^Epoch", "-o", "id",
|
"-d", "^Epoch", "-o", "id",
|
||||||
"1490349000 test this/is/some/path/32", "^\s*test <F-ID>\S+</F-ID>"
|
"1490349000 test this/is/some/path/32", r"^\s*test <F-ID>\S+</F-ID>"
|
||||||
))
|
))
|
||||||
self.assertLogged('this/is/some/path/32', all=True)
|
self.assertLogged('this/is/some/path/32', all=True)
|
||||||
|
|
||||||
|
@ -439,23 +439,23 @@ class Fail2banRegexTest(LogCaptureTestCase):
|
||||||
# with different ID/IP from failregex (ID/User from first, IP from second message):
|
# with different ID/IP from failregex (ID/User from first, IP from second message):
|
||||||
self.assertTrue(_test('-o', 'ID:"<fid>" | IP:<ip> | U:<F-USER>', log,
|
self.assertTrue(_test('-o', 'ID:"<fid>" | IP:<ip> | U:<F-USER>', log,
|
||||||
flt+'[failregex="'
|
flt+'[failregex="'
|
||||||
'^'+prefix+'<F-ID>User <F-USER>\S+</F-USER></F-ID> not allowed\n'
|
'^'+prefix+r'<F-ID>User <F-USER>\S+</F-USER></F-ID> not allowed'+'\n'
|
||||||
'^'+prefix+'Received disconnect from <ADDR>'
|
'^'+prefix+r'Received disconnect from <ADDR>'
|
||||||
'"]'))
|
'"]'))
|
||||||
self.assertLogged('ID:"User root" | IP:192.0.2.76 | U:root')
|
self.assertLogged('ID:"User root" | IP:192.0.2.76 | U:root')
|
||||||
self.pruneLog()
|
self.pruneLog()
|
||||||
# with different ID/IP from failregex (User from first, ID and IP from second message):
|
# with different ID/IP from failregex (User from first, ID and IP from second message):
|
||||||
self.assertTrue(_test('-o', 'ID:"<fid>" | IP:<ip> | U:<F-USER>', log,
|
self.assertTrue(_test('-o', 'ID:"<fid>" | IP:<ip> | U:<F-USER>', log,
|
||||||
flt+'[failregex="'
|
flt+'[failregex="'
|
||||||
'^'+prefix+'User <F-USER>\S+</F-USER> not allowed\n'
|
'^'+prefix+r'User <F-USER>\S+</F-USER> not allowed'+'\n'
|
||||||
'^'+prefix+'Received disconnect from <F-ID><ADDR> port \d+</F-ID>'
|
'^'+prefix+r'Received disconnect from <F-ID><ADDR> port \d+</F-ID>'
|
||||||
'"]'))
|
'"]'))
|
||||||
self.assertLogged('ID:"192.0.2.76 port 58846" | IP:192.0.2.76 | U:root')
|
self.assertLogged('ID:"192.0.2.76 port 58846" | IP:192.0.2.76 | U:root')
|
||||||
self.pruneLog()
|
self.pruneLog()
|
||||||
# first with sshd and prefregex:
|
# first with sshd and prefregex:
|
||||||
_test_variants()
|
_test_variants()
|
||||||
# the same without prefregex and MLFID directly in failregex (no merge with prefregex groups):
|
# the same without prefregex and MLFID directly in failregex (no merge with prefregex groups):
|
||||||
_test_variants('common', prefix="\s*\S+ sshd\[<F-MLFID>\d+</F-MLFID>\]:\s+")
|
_test_variants('common', prefix=r"\s*\S+ sshd\[<F-MLFID>\d+</F-MLFID>\]:\s+")
|
||||||
|
|
||||||
def testNoDateTime(self):
|
def testNoDateTime(self):
|
||||||
# datepattern doesn't match:
|
# datepattern doesn't match:
|
||||||
|
@ -541,7 +541,7 @@ class Fail2banRegexTest(LogCaptureTestCase):
|
||||||
'svc[2] connect started 192.0.2.4\n'
|
'svc[2] connect started 192.0.2.4\n'
|
||||||
'svc[2] connect authorized 192.0.2.4\n'
|
'svc[2] connect authorized 192.0.2.4\n'
|
||||||
'svc[2] connect finished 192.0.2.4\n',
|
'svc[2] connect finished 192.0.2.4\n',
|
||||||
'common[prefregex="^svc\[<F-MLFID>\d+</F-MLFID>\] connect <F-CONTENT>.+</F-CONTENT>$"'
|
r'common[prefregex="^svc\[<F-MLFID>\d+</F-MLFID>\] connect <F-CONTENT>.+</F-CONTENT>$"'
|
||||||
', failregex="'
|
', failregex="'
|
||||||
'^started\n'
|
'^started\n'
|
||||||
'^<F-NOFAIL><F-MLFFORGET>finished</F-MLFFORGET></F-NOFAIL> <ADDR>\n'
|
'^<F-NOFAIL><F-MLFFORGET>finished</F-MLFFORGET></F-NOFAIL> <ADDR>\n'
|
||||||
|
|
|
@ -1372,12 +1372,12 @@ class ServerConfigReaderTests(LogCaptureTestCase):
|
||||||
"`{ nft flush set inet f2b-table addr6-set-j-w-nft-mp 2> /dev/null; } || ",
|
"`{ nft flush set inet f2b-table addr6-set-j-w-nft-mp 2> /dev/null; } || ",
|
||||||
),
|
),
|
||||||
'stop': (
|
'stop': (
|
||||||
"`{ nft -a list chain inet f2b-table f2b-chain | grep -oP '@addr-set-j-w-nft-mp\s+.*\s+\Khandle\s+(\d+)$'; } | while read -r hdl; do`",
|
r"`{ nft -a list chain inet f2b-table f2b-chain | grep -oP '@addr-set-j-w-nft-mp\s+.*\s+\Khandle\s+(\d+)$'; } | while read -r hdl; do`",
|
||||||
"`nft delete rule inet f2b-table f2b-chain $hdl; done`",
|
r"`nft delete rule inet f2b-table f2b-chain $hdl; done`",
|
||||||
"`nft delete set inet f2b-table addr-set-j-w-nft-mp`",
|
r"`nft delete set inet f2b-table addr-set-j-w-nft-mp`",
|
||||||
"`{ nft -a list chain inet f2b-table f2b-chain | grep -oP '@addr6-set-j-w-nft-mp\s+.*\s+\Khandle\s+(\d+)$'; } | while read -r hdl; do`",
|
r"`{ nft -a list chain inet f2b-table f2b-chain | grep -oP '@addr6-set-j-w-nft-mp\s+.*\s+\Khandle\s+(\d+)$'; } | while read -r hdl; do`",
|
||||||
"`nft delete rule inet f2b-table f2b-chain $hdl; done`",
|
r"`nft delete rule inet f2b-table f2b-chain $hdl; done`",
|
||||||
"`nft delete set inet f2b-table addr6-set-j-w-nft-mp`",
|
r"`nft delete set inet f2b-table addr6-set-j-w-nft-mp`",
|
||||||
),
|
),
|
||||||
'ip4-check': (
|
'ip4-check': (
|
||||||
r"`nft list chain inet f2b-table f2b-chain | grep -q '@addr-set-j-w-nft-mp[ \t]'`",
|
r"`nft list chain inet f2b-table f2b-chain | grep -q '@addr-set-j-w-nft-mp[ \t]'`",
|
||||||
|
@ -1418,12 +1418,12 @@ class ServerConfigReaderTests(LogCaptureTestCase):
|
||||||
"`{ nft flush set inet f2b-table addr6-set-j-w-nft-ap 2> /dev/null; } || ",
|
"`{ nft flush set inet f2b-table addr6-set-j-w-nft-ap 2> /dev/null; } || ",
|
||||||
),
|
),
|
||||||
'stop': (
|
'stop': (
|
||||||
"`{ nft -a list chain inet f2b-table f2b-chain | grep -oP '@addr-set-j-w-nft-ap\s+.*\s+\Khandle\s+(\d+)$'; } | while read -r hdl; do`",
|
r"`{ nft -a list chain inet f2b-table f2b-chain | grep -oP '@addr-set-j-w-nft-ap\s+.*\s+\Khandle\s+(\d+)$'; } | while read -r hdl; do`",
|
||||||
"`nft delete rule inet f2b-table f2b-chain $hdl; done`",
|
r"`nft delete rule inet f2b-table f2b-chain $hdl; done`",
|
||||||
"`nft delete set inet f2b-table addr-set-j-w-nft-ap`",
|
r"`nft delete set inet f2b-table addr-set-j-w-nft-ap`",
|
||||||
"`{ nft -a list chain inet f2b-table f2b-chain | grep -oP '@addr6-set-j-w-nft-ap\s+.*\s+\Khandle\s+(\d+)$'; } | while read -r hdl; do`",
|
r"`{ nft -a list chain inet f2b-table f2b-chain | grep -oP '@addr6-set-j-w-nft-ap\s+.*\s+\Khandle\s+(\d+)$'; } | while read -r hdl; do`",
|
||||||
"`nft delete rule inet f2b-table f2b-chain $hdl; done`",
|
r"`nft delete rule inet f2b-table f2b-chain $hdl; done`",
|
||||||
"`nft delete set inet f2b-table addr6-set-j-w-nft-ap`",
|
r"`nft delete set inet f2b-table addr6-set-j-w-nft-ap`",
|
||||||
),
|
),
|
||||||
'ip4-check': (
|
'ip4-check': (
|
||||||
r"""`nft list chain inet f2b-table f2b-chain | grep -q '@addr-set-j-w-nft-ap[ \t]'`""",
|
r"""`nft list chain inet f2b-table f2b-chain | grep -q '@addr-set-j-w-nft-ap[ \t]'`""",
|
||||||
|
|
Loading…
Reference in New Issue