Exemple #1
0
    def createConnection(self, packet, socPair, *args, **kwargs):
        if len(self.connections) >= self.max_active_conns:
            s = "Ignoring new connection request:"
            s += "already have %d active connections"
            log.warn(s % self.max_active_conns)
            return None

        if not self.agent.isSyn(packet):
            return None

        _kwargs = {}
        _kwargs.update(kwargs)
        _kwargs["connection_over_cb"] = self.connectionClosed
        _kwargs["has_data_to_send_cb"] = self.connHasDataToSend
        conn = TcpConnection.createFromPacket(packet, **_kwargs)

        return conn