--- a/bin/pvl.hosts-dns Thu Dec 19 19:30:35 2013 +0200
+++ b/bin/pvl.hosts-dns Thu Dec 19 20:03:22 2013 +0200
@@ -14,12 +14,10 @@
Resolve alias@domain within given zone.
"""
- if '.' in alias :
- pass
- elif host_domain :
+ if host_domain :
alias = pvl.dns.join(alias, host_domain)
else :
- raise ValueError("no domain given for alias: %s / %s" % (alias, ))
+ raise ValueError("no domain given for host %s alias %s" % (host, alias, ))
if alias.endswith('.' + origin) :
# strip
--- a/bin/pvl.hosts-import Thu Dec 19 19:30:35 2013 +0200
+++ b/bin/pvl.hosts-import Thu Dec 19 20:03:22 2013 +0200
@@ -167,8 +167,10 @@
if domain == alias_domain :
yield (alias_host, alias_domain), 'alias', host
+ elif domain.endswith('.' + alias_domain) :
+ yield (alias_host, alias_domain), 'alias', pvl.dns.join(host, domain[:(len(domain) - len(alias_domain) - 1)])
else :
- yield (alias_host, alias_domain), 'alias', pvl.dns.join(host, domain)
+ log.warn("%s@%s: alias outside of target domain: %s", host, domain, alias_domain)
elif rr.type == 'TXT' :
txt, = rr.data