From 816e678bf370188204d390b2c5edb6c856f1d5a1 Mon Sep 17 00:00:00 2001 From: Rebecca Hsieh Date: Thu, 12 Oct 2023 09:26:51 -0700 Subject: [PATCH] Add in regex for subdomain checking --- src/registrar/models/domain.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/registrar/models/domain.py b/src/registrar/models/domain.py index e75692bf7..7aaeebe21 100644 --- a/src/registrar/models/domain.py +++ b/src/registrar/models/domain.py @@ -1,6 +1,7 @@ from itertools import zip_longest import logging import ipaddress +import re from datetime import date from string import digits from django_fsm import FSMField, transition, TransitionNotAllowed # type: ignore @@ -292,7 +293,10 @@ class Domain(TimeStampedModel, DomainHelper): def isSubdomain(self, nameserver: str): """Returns boolean if the domain name is found in the argument passed""" - return self.name in nameserver + subdomain_pattern = r"([\w-]+\.)*" + full_pattern = subdomain_pattern + self.name + regex = re.compile(full_pattern) + return bool(regex.match(nameserver)) def checkHostIPCombo(self, nameserver: str, ip: list[str]): """Checks the parameters past for a valid combination