aboutsummaryrefslogtreecommitdiff
path: root/modules/ip_addresses.py
diff options
context:
space:
mode:
Diffstat (limited to 'modules/ip_addresses.py')
-rw-r--r--modules/ip_addresses.py15
1 files changed, 8 insertions, 7 deletions
diff --git a/modules/ip_addresses.py b/modules/ip_addresses.py
index e13f59ff..62208504 100644
--- a/modules/ip_addresses.py
+++ b/modules/ip_addresses.py
@@ -1,6 +1,6 @@
#--depends-on commands
-import re, socket
+import re, socket, typing
from src import ModuleManager, utils
import dns.resolver
@@ -9,13 +9,14 @@ REGEX_IPv6 = r"(?:(?:[a-f0-9]{1,4}:){2,}|[a-f0-9:]*::)[a-f0-9:]*"
REGEX_IPv4 = r"(?:\d{1,3}\.){3}\d{1,3}"
REGEX_IP = re.compile("(%s)|(%s)" % (REGEX_IPv4, REGEX_IPv6), re.I)
-def _dns_validate(s):
- if utils.is_ip(s):
- return s
- return None
+class DnsSetting(utils.Setting):
+ def parse(self, value: str) -> typing.Any:
+ if utils.is_ip(value):
+ return value
+ return None
-@utils.export("serverset", {"setting": "dns-nameserver",
- "help": "Set DNS nameserver", "example": "8.8.8.8"})
+@utils.export("serverset", DnsSetting("dns-nameserver",
+ "Set DNS nameserver", example="8.8.8.8"))
class Module(ModuleManager.BaseModule):
@utils.hook("received.command.dns", min_args=1)
def dns(self, event):