Ejemplo n.º 1
0
def get_packet(in_data):
    valid_packet = False
    packet = None

    if in_data != b'':
        header = get_header(in_data)
        checksum = header[1]
        pac_type = header[2]
        seq_no = header[3]
        data_len = header[4]

        if data_len >= len(in_data) - 20:
            data = get_data(in_data, data_len)

            packet = Packet(pac_type, seq_no, data_len, data, checksum)

            valid_packet = packet.checksum == packet.calculate_checksum()

    return packet, valid_packet