aboutsummaryrefslogtreecommitdiffstats
path: root/ddns
diff options
context:
space:
mode:
authorMarius Halden <marius.h@lden.org>2014-03-17 19:51:58 +0100
committerMarius Halden <marius.h@lden.org>2014-03-17 19:51:58 +0100
commit2c8a22216ef9c6cb9c6e6741f9c54acfd3262a72 (patch)
tree520299b0e16cc2ae00fe22e40e832286ea6eb9f2 /ddns
parent97fcbda00f1a84a696d8458c377cc4447bf1d7fe (diff)
downloadDDNS.py-2c8a22216ef9c6cb9c6e6741f9c54acfd3262a72.tar.gz
DDNS.py-2c8a22216ef9c6cb9c6e6741f9c54acfd3262a72.tar.bz2
DDNS.py-2c8a22216ef9c6cb9c6e6741f9c54acfd3262a72.tar.xz
Fixed fault when creating dns keyring
Diffstat (limited to 'ddns')
-rw-r--r--ddns/backend/dnsupdate.py5
-rw-r--r--ddns/frontend/dyn_com.py8
2 files changed, 8 insertions, 5 deletions
diff --git a/ddns/backend/dnsupdate.py b/ddns/backend/dnsupdate.py
index 650759f..8257540 100644
--- a/ddns/backend/dnsupdate.py
+++ b/ddns/backend/dnsupdate.py
@@ -52,9 +52,8 @@ def get_hash_method(hash_name):
return dns.tsig.default_algorithm
def update_dns(zone, hostname, ip, ttl=300):
- global keyring
- if not keyring:
- keyring = gen_keyring(ddns.cfg_parser.cfg.get('dnskeys'))
+ if not keyring or keyring == None:
+ gen_keyring(ddns.cfg_parser.cfg.get('dnskeys'))
zone = get_zone(zone)
dns_srv = zone['ns']
diff --git a/ddns/frontend/dyn_com.py b/ddns/frontend/dyn_com.py
index 5ef6e11..9b803ec 100644
--- a/ddns/frontend/dyn_com.py
+++ b/ddns/frontend/dyn_com.py
@@ -18,6 +18,9 @@ def dyn_com():
if not request.args.has_key('myip'):
return "nohost"
+ if len(request.args.getlist('myip')) != 1:
+ return "nohost"
+
hostname = request.args.get('hostname')
if not '.' in hostname:
return "notfqdn"
@@ -43,5 +46,6 @@ def dyn_com():
# We should probably check something here...
return "good"
return auth.authenticate("!yours")
- return "nohost"
- return "nohost"
+ return "nohost2"
+ raise RuntimeError("ooops")
+ return "nohost1"