def connectionTaskFailed(self, connection_task, reason, fprint=None):
        '''For every pending request for this connection, errback the request
        deferred. Remove this connection from the pending map.

        Called when the TLS connection to the IP of relay with
        *fingerprint* fails.

        :param reason reason: reason this connection failed
        :param str fingerprint: fingerprint of the relay this connection
            failed to
        '''
        # XXX update what args we're calling the errback here with
        fprint = fprint and connection_task.micro_status_entry.fingerprint
        try:
            for request in self._pending_request_dict[fprint]:
                request.errback(reason)
            del self._pending_request_dict[fprint]
        except KeyError:
            msg = ("ConnectionManager notified that a connection to {} "
                   "failed, but ConnectionManager has no reference to this "
                   "connection. Dropping.".format(fprint))
            logging.debug(msg)
dataset/ETHPy150Open nskinkel/oppy/oppy/connection/connectionmanager.py/ConnectionManager.connectionTaskFailed/operator `or` -> `and`