minor code cleanup
This commit is contained in:
parent
c7d574ada6
commit
2370ffbe2d
39
src/nip.py
39
src/nip.py
@ -20,31 +20,37 @@ import re
|
|||||||
import os
|
import os
|
||||||
import ConfigParser
|
import ConfigParser
|
||||||
|
|
||||||
DEBUG=0
|
DEBUG = 0
|
||||||
|
|
||||||
|
|
||||||
def log(msg):
|
def log(msg):
|
||||||
sys.stderr.write('backend (%s): %s\n' % (os.getpid(), msg))
|
sys.stderr.write('backend (%s): %s\n' % (os.getpid(), msg))
|
||||||
|
|
||||||
|
|
||||||
def write(*l):
|
def write(*l):
|
||||||
args=len(l)
|
args = len(l)
|
||||||
c = 0
|
c = 0
|
||||||
for a in l:
|
for a in l:
|
||||||
c += 1
|
c += 1
|
||||||
if DEBUG: log('writing: %s' % a)
|
if DEBUG:
|
||||||
|
log('writing: %s' % a)
|
||||||
sys.stdout.write(a)
|
sys.stdout.write(a)
|
||||||
if c < args:
|
if c < args:
|
||||||
if DEBUG: log('writetab')
|
if DEBUG:
|
||||||
|
log('writetab')
|
||||||
sys.stdout.write('\t')
|
sys.stdout.write('\t')
|
||||||
if DEBUG: log('writenewline')
|
if DEBUG:
|
||||||
|
log('writenewline')
|
||||||
sys.stdout.write('\n')
|
sys.stdout.write('\n')
|
||||||
sys.stdout.flush()
|
sys.stdout.flush()
|
||||||
|
|
||||||
|
|
||||||
def get_next():
|
def get_next():
|
||||||
if DEBUG: log('reading now')
|
if DEBUG:
|
||||||
|
log('reading now')
|
||||||
l = sys.stdin.readline()
|
l = sys.stdin.readline()
|
||||||
if DEBUG: log('read line: %s' % l)
|
if DEBUG:
|
||||||
|
log('read line: %s' % l)
|
||||||
return l.strip().split('\t')
|
return l.strip().split('\t')
|
||||||
|
|
||||||
|
|
||||||
@ -69,7 +75,7 @@ class DynamicBackend:
|
|||||||
fp.close()
|
fp.close()
|
||||||
|
|
||||||
self.id = config.get('soa', 'id')
|
self.id = config.get('soa', 'id')
|
||||||
self.soa = '%s %s %s' % (config.get('soa', 'ns'), config.get('soa','hostmaster'), self.id)
|
self.soa = '%s %s %s' % (config.get('soa', 'ns'), config.get('soa', 'hostmaster'), self.id)
|
||||||
self.domain = config.get('main', 'domain')
|
self.domain = config.get('main', 'domain')
|
||||||
self.ip_address = config.get('main', 'ipaddress')
|
self.ip_address = config.get('main', 'ipaddress')
|
||||||
self.ttl = config.get('main', 'ttl')
|
self.ttl = config.get('main', 'ttl')
|
||||||
@ -95,7 +101,8 @@ class DynamicBackend:
|
|||||||
|
|
||||||
while True:
|
while True:
|
||||||
cmd = get_next()
|
cmd = get_next()
|
||||||
if DEBUG: log(cmd)
|
if DEBUG:
|
||||||
|
log(cmd)
|
||||||
|
|
||||||
if len(cmd) < 6:
|
if len(cmd) < 6:
|
||||||
log('did not understand: %s' % cmd)
|
log('did not understand: %s' % cmd)
|
||||||
@ -123,7 +130,7 @@ class DynamicBackend:
|
|||||||
write('END')
|
write('END')
|
||||||
|
|
||||||
def handle_subdomains(self, qname):
|
def handle_subdomains(self, qname):
|
||||||
subdomain = qname[0:qname.find(self.domain)-1]
|
subdomain = qname[0:qname.find(self.domain) - 1]
|
||||||
# Split foo.bar.10-0-0-1 in parts
|
# Split foo.bar.10-0-0-1 in parts
|
||||||
subdomain_parts = subdomain.split('.')
|
subdomain_parts = subdomain.split('.')
|
||||||
|
|
||||||
@ -132,20 +139,24 @@ class DynamicBackend:
|
|||||||
subparts = ip_dashes.split('-')
|
subparts = ip_dashes.split('-')
|
||||||
|
|
||||||
if len(subparts) < 4:
|
if len(subparts) < 4:
|
||||||
if DEBUG: log('subparts less than 4')
|
if DEBUG:
|
||||||
|
log('subparts less than 4')
|
||||||
self.handle_self(qname)
|
self.handle_self(qname)
|
||||||
return
|
return
|
||||||
|
|
||||||
ipaddress = subparts[-4:]
|
ipaddress = subparts[-4:]
|
||||||
if DEBUG: log('ip: %s' % ipaddress)
|
if DEBUG:
|
||||||
|
log('ip: %s' % ipaddress)
|
||||||
for part in ipaddress:
|
for part in ipaddress:
|
||||||
if re.match('^\d{1,3}$', part) is None:
|
if re.match('^\d{1,3}$', part) is None:
|
||||||
if DEBUG: log('%s is not a number' % part)
|
if DEBUG:
|
||||||
|
log('%s is not a number' % part)
|
||||||
self.handle_self(qname)
|
self.handle_self(qname)
|
||||||
return
|
return
|
||||||
parti = int(part)
|
parti = int(part)
|
||||||
if parti < 0 or parti > 255:
|
if parti < 0 or parti > 255:
|
||||||
if DEBUG: log('%d is too big/small' % parti)
|
if DEBUG:
|
||||||
|
log('%d is too big/small' % parti)
|
||||||
self.handle_self(qname)
|
self.handle_self(qname)
|
||||||
return
|
return
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user