From 1bcc9d5d0d46faf701d2523425893fcdafd14f8e Mon Sep 17 00:00:00 2001 From: alwaysjolley Date: Wed, 3 Jun 2020 13:20:23 -0400 Subject: [PATCH] allowing for _ in domains --- lemur/dns_providers/util.py | 2 +- lemur/tests/test_dns_providers.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lemur/dns_providers/util.py b/lemur/dns_providers/util.py index d7140661..0fa84ac1 100644 --- a/lemur/dns_providers/util.py +++ b/lemur/dns_providers/util.py @@ -35,7 +35,7 @@ def is_valid_domain(domain): domain = domain[:-1] if len(domain) > 253: return False - fqdn_re = re.compile("(?=^.{1,63}$)(^(?:[a-z0-9](?:-*[a-z0-9])+)$|^[a-z0-9]$)", re.IGNORECASE) + fqdn_re = re.compile("(?=^.{1,63}$)(^(?:[a-z0-9_](?:-*[a-z0-9_])+)$|^[a-z0-9]$)", re.IGNORECASE) return all(fqdn_re.match(d) for d in domain.split(".")) diff --git a/lemur/tests/test_dns_providers.py b/lemur/tests/test_dns_providers.py index 26679776..83315be5 100644 --- a/lemur/tests/test_dns_providers.py +++ b/lemur/tests/test_dns_providers.py @@ -11,7 +11,7 @@ class TestDNSProvider(unittest.TestCase): self.assertTrue(dnsutil.is_valid_domain('example.io')) self.assertTrue(dnsutil.is_valid_domain('example-of-under-63-character-domain-label-length-limit-1234567.com')) self.assertFalse(dnsutil.is_valid_domain('example-of-over-63-character-domain-label-length-limit-123456789.com')) - self.assertFalse(dnsutil.is_valid_domain('_acme-chall.example.com')) + self.assertTrue(dnsutil.is_valid_domain('_acme-chall.example.com')) self.assertFalse(dnsutil.is_valid_domain('e/xample.com')) self.assertFalse(dnsutil.is_valid_domain('exam\ple.com')) self.assertFalse(dnsutil.is_valid_domain('