예제 #1
0
    def on_readable(self):
        """Call when socket is readable, or needs to read (if blocking)"""
        data, addr = self.socket.recvfrom(1024)

        if addr != self.target_addr: return  # who sent that?

        data = bytearray(data)

        try:
            pkt = Packet.from_bytearray(data)
        except PacketMalformedError:
            pass

        self.connection.on_received(pkt)
예제 #2
0
    def on_readable(self):
        """Call when socket is readable, or needs to read (if blocking)"""
        data, addr = self.socket.recvfrom(1024)

        if addr != self.target_addr: return  # who sent that?

        data = bytearray(data)

        try:
            pkt = Packet.from_bytearray(data)
        except PacketMalformedError:
            pass

        self.connection.on_received(pkt)
예제 #3
0
    def on_readable(self):
        """Call when socket is readable, or needs to read (if blocking)"""
        data, addr = self.socket.recvfrom(1024)
        data = bytearray(data)
        try:
            pkt = Packet.from_bytearray(data)
        except PacketMalformedError:
            pass

        if addr in self.connections:
            self.connections[addr].on_received(pkt)
        else:
            connargs = self.on_connected(addr)
            self.connections[addr] = Connection(*connargs)
            self.connections[addr].on_received(pkt)
예제 #4
0
    def on_readable(self):
        """Call when socket is readable, or needs to read (if blocking)"""
        data, addr = self.socket.recvfrom(1024)
        data = bytearray(data)
        try:
            pkt = Packet.from_bytearray(data)
        except PacketMalformedError:
            pass

        if addr in self.connections:
            self.connections[addr].on_received(pkt)
        else:
            connargs = self.on_connected(addr)
            self.connections[addr] = Connection(*connargs)
            self.connections[addr].on_received(pkt)