me._namemap = {}
me._noutstand = 0
+ def _prepare(me, host, name):
+ """Arrange to resolve a NAME, reporting the results to HOST."""
+ host._resolv = M.SelResolveByName(
+ name,
+ lambda cname, alias, addr: me._resolved(host, cname, addr),
+ lambda: me._resolved(host, None, []))
+ me._noutstand += 1
+
def prepare(me, name):
"""Prime the resolver to resolve the given host NAME."""
if name not in me._namemap:
me._namemap[name] = host = ResolvingHost(name)
- host._resolv = M.SelResolveByName(
- name,
- lambda cname, alias, addr: me._resolved(host, cname, addr),
- lambda: me._resolved(host, None, []))
- me._noutstand += 1
+ me._prepare(host, name)
def run(me):
"""Run the background DNS resolver until it's finished."""