'Register incoming data server. Return server object.'

def RegisterServer(self, addr, port):

    for server in self.servers:
        if (server == self.myself):
            continue
        if server.Matches(addr, port):
            with self.server_lock:
                if server.IsRegistered():
                    return None
                else:
                    self._DoRegisterServer(server)
                    return server
    return None
