Parcourir la source

fix(resolving): support domain names that start with a number

Domains are allowed to start with numbers and are currently not resolved
because of the current simple regex.

The new regexes better cover the IPv4 and IPv6 address (with optional
netmask)
pull/28/head
Paul il y a 3 ans
Parent
révision
d8ca0a2a92
1 fichiers modifiés avec 6 ajouts et 2 suppressions
  1. +6
    -2
      _states/ufw.py

+ 6
- 2
_states/ufw.py Voir le fichier

@@ -20,8 +20,12 @@ def _changed(name, msg, **changes):


def _resolve(host):
# let's just see if it starts with a number or a colon, for simplicity
if re.match(r'^[0-9:]', host):
# pure IP address / netmask IPv4?
if re.match(r'^([0-9\.])+(/[0-9]+)?$', host):
return host

# pure IPv6 address / netmask?
if re.match(r'^([0-9a-f:]+)(/[0-9]+)?$', host):
return host

return socket.gethostbyname(host)

Chargement…
Annuler
Enregistrer