Issue #2785: fix — ignore domains ending with a dot.

This commit is contained in:
Steven Black
2024-12-16 20:53:49 -04:00
parent 7c8c1fb1e0
commit 080d276bb7
2 changed files with 6 additions and 1 deletions

View File

@ -846,6 +846,7 @@ class TestNormalizeRule(BaseStdout):
"0.3.4.5 example.org/hello/world",
"0.0.0.0 https",
"0.0.0.0 https..",
"0.0.0.0 foo.",
]:
self.assertEqual(normalize_rule(rule, **kwargs), (None, None))

View File

@ -1129,8 +1129,9 @@ def normalize_rule(rule, target_ip, keep_domain_comments):
is_ip(hostname)
or re.search(static_ip_regex, hostname)
or "." not in hostname
or "/" in hostname
or ".." in hostname
or "." in hostname[-1]
or "/" in hostname
or ":" in hostname
):
# Example: 0.0.0.0 127.0.0.1
@ -1138,6 +1139,9 @@ def normalize_rule(rule, target_ip, keep_domain_comments):
# If the hostname is:
# - an IP - or looks like it,
# - doesn't contain dots, or
# - contains repeated dots,
# - ends in a dot, or
# - contains a slash, or
# - contains a colon,
# we don't want to normalize it.
return belch_unwanted(rule)