Lines Matching full:incoming
529 packet_receive_data_t *incoming = &incoming_packets[PACKET_TYPE_TO_INBOUND_INDEX(type)];
533 switch (incoming->state) {
536 incoming->bytes_remaining = preamble_sizes[PACKET_TYPE_TO_INDEX(type)];
537 memset(incoming->preamble, 0, PREAMBLE_BUFFER_SIZE);
538 incoming->index = 0;
539 incoming->state = PREAMBLE;
542 incoming->preamble[incoming->index] = byte;
543 incoming->index++;
544 incoming->bytes_remaining--;
546 if (incoming->bytes_remaining == 0) {
548 incoming->bytes_remaining = (type == DATA_TYPE_ACL) ? RETRIEVE_ACL_LENGTH(incoming->preamble) : byte;
550 size_t buffer_size = BT_HDR_SIZE + incoming->index + incoming->bytes_remaining;
551 incoming->buffer = (BT_HDR *)buffer_allocator->alloc(buffer_size);
553 if (!incoming->buffer) {
554 LOG_ERROR("%s error getting buffer for incoming packet of type %d and size %zd", __func__, type, buffer_size);
556 incoming->state = incoming->bytes_remaining == 0 ? BRAND_NEW : IGNORE;
561 incoming->buffer->offset = 0;
562 incoming->buffer->layer_specific = 0;
563 incoming->buffer->event = outbound_event_types[PACKET_TYPE_TO_INDEX(type)];
564 memcpy(incoming->buffer->data, incoming->preamble, incoming->index);
566 incoming->state = incoming->bytes_remaining > 0 ? BODY : FINISHED;
571 incoming->buffer->data[incoming->index] = byte;
572 incoming->index++;
573 incoming->bytes_remaining--;
575 size_t bytes_read = hal->read_data(type, (incoming->buffer->data + incoming->index), incoming->bytes_remaining, false);
576 incoming->index += bytes_read;
577 incoming->bytes_remaining -= bytes_read;
579 incoming->state = incoming->bytes_remaining == 0 ? FINISHED : incoming->state;
582 incoming->bytes_remaining--;
583 if (incoming->bytes_remaining == 0) {
584 incoming->state = BRAND_NEW;
598 if (incoming->state == FINISHED) {
599 incoming->buffer->len = incoming->index;
600 btsnoop->capture(incoming->buffer, true);
603 packet_fragmenter->reassemble_and_dispatch(incoming->buffer);
604 } else if (!filter_incoming_event(incoming->buffer)) {
606 uint8_t *stream = incoming->buffer->data;
613 incoming->buffer
618 incoming->buffer = NULL;
619 incoming->state = BRAND_NEW;
631 // higher layers. Also inspects an incoming event for interesting