summaryrefslogtreecommitdiffstats
path: root/modules/ns_checker.py
diff options
context:
space:
mode:
authorUltrabug <ultrabug@gentoo.org>2014-11-23 20:55:53 +0100
committerUltrabug <ultrabug@gentoo.org>2014-11-23 20:55:53 +0100
commitd9747b64e1e62abee12ef0bafd365cf380ff7fe9 (patch)
tree11a1d156c38ec96b83b4a1780719fc856cbbebad /modules/ns_checker.py
parent62b2bd2251997bf8608e9620d91f688585221040 (diff)
move modules folder so we can install it as a module of py3status
Diffstat (limited to 'modules/ns_checker.py')
-rw-r--r--modules/ns_checker.py57
1 files changed, 0 insertions, 57 deletions
diff --git a/modules/ns_checker.py b/modules/ns_checker.py
deleted file mode 100644
index 4a332b1..0000000
--- a/modules/ns_checker.py
+++ /dev/null
@@ -1,57 +0,0 @@
-import dns.resolver
-import socket
-
-
-class Py3status:
- """
- This module launch a simple query on each nameservers for the specified domain.
- Nameservers are dynamically retrieved. The FQDN is the only one mandatory parameter.
- It's also possible to add additional nameservers by appending them in nameservers list.
-
- The default resolver can be overwritten with my_resolver.nameservers parameter.
-
- Written and contributed by @nawadanp
- """
- def __init__(self):
- self.domain = 'google.com'
- self.lifetime = 0.3
- self.resolver = []
- self.nameservers = []
-
- def ns_checker(self, i3status_output_json, i3status_config):
- response = {'full_text': '', 'name': 'ns_checker'}
- position = 0
- counter = 0
- error = False
- nameservers = []
-
- my_resolver = dns.resolver.Resolver()
- my_resolver.lifetime = self.lifetime
- if self.resolver:
- my_resolver.nameservers = self.resolver
-
- my_ns = my_resolver.query(self.domain, 'NS')
-
- # Insert each NS ip address in nameservers
- for ns in my_ns:
- nameservers.append(str(socket.gethostbyname(str(ns))))
- for ns in self.nameservers:
- nameservers.append(str(ns))
-
- # Perform a simple DNS query, for each NS servers
- for ns in nameservers:
- my_resolver.nameservers = [ns]
- counter += 1
- try:
- my_resolver.query(self.domain, 'A')
- except:
- error = True
-
- if error:
- response['full_text'] = str(counter) + ' NS NOK'
- response['color'] = i3status_config['color_bad']
- else:
- response['full_text'] = str(counter) + ' NS OK'
- response['color'] = i3status_config['color_good']
-
- return (position, response)