diff --git a/base/univention-system-setup/umc/python/setup/util.py b/base/univention-system-setup/umc/python/setup/util.py index 624a9ed334..51ddacc7c0 100644 --- a/base/univention-system-setup/umc/python/setup/util.py +++ b/base/univention-system-setup/umc/python/setup/util.py @@ -870,22 +870,15 @@ def is_domainname(domainname): is_domainname.RE = re.compile(r'^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$', re.I) -def is_windowsdomainname(domainname): - return is_windowsdomainname.RE.match(domainname) is not None and len(domainname) < 14 - - -is_windowsdomainname.RE = re.compile(r"^[A-Z](?:[A-Z0-9-]*[A-Z0-9])?$") +def is_windowsdomainname(name): + validname = re.sub('[\\\\/:*?><|.]', '', name) + return name == validname and len(name) < 14 def domain2windowdomain(domainname): windomain = domainname.split('.', 1)[0].upper() - invalidChars = re.compile(r"^[^A-Z]*([A-Z0-9-]*?)[^A-Z0-9]*$") - match = invalidChars.match(windomain) - if match: - windomain = match.group(1) - else: - windomain = '' + windomain = re.sub('[\\\\/:*?><|.]', '', windomain) windomain = windomain[:15] # enforce netbios limit