def cname_from_array(self, data): logging.info("CNAME data: %s" % data) self.sanity(data, 4) alias = sub(self.domain, data[0]) # CNAME's can have TTLS or use the global if self.is_number(data[1]): ttl = data[1] addr = data[-1].strip() try: parsed = {'ttl': ttl, 'addr': addr, 'alias': alias} except: parsed = {'addr': addr, 'alias': alias} self.zone.cname(parsed)
def step2(pts, n): ship, way = pts key, value = n if key == 'L': way = rotate_around_pt(ship, way, value) elif key == 'R': way = rotate_around_pt(ship, way, -value) elif key == 'F': v = list(sub(way, ship)) vs = [v] * value ship = list(reduce(lambda acc, n: add(acc, n), vs, ship)) way = add(ship, v) else: d = dirmap[key] way = list(add(way, (d[0] * value, d[1] * value))) return ship, way
def a_from_array(self, data): data = trim(data) self.sanity(data, 4) addr = data[-1].strip() # If position 1 is numeric, its a TTL if self.is_number(data[1]): ttl = data[1] if len(data[0].split('.')) > 1: alias = sub(self.domain, data[0]) else: alias = data[0] try: parsed = {'ttl': ttl, 'addr': addr, 'alias': alias} except: parsed = {'addr': addr, 'alias': alias} self.zone.a(parsed)