|
|
@ -226,13 +226,26 @@ void ttcn3_ue::timer_expired(uint32_t timeout_id)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
if (timeout_id == pdu_delay_timer.id()) {
|
|
|
|
if (timeout_id == pdu_delay_timer.id()) {
|
|
|
|
log.info("Testmode B PDU delay timer expired\n");
|
|
|
|
log.info("Testmode B PDU delay timer expired\n");
|
|
|
|
for (auto& bearer_pdu_queue : pdu_queue) {
|
|
|
|
send_queued_data();
|
|
|
|
log.info("Delivering %zd buffered PDUs for LCID=%d\n", bearer_pdu_queue.second.size(), bearer_pdu_queue.first);
|
|
|
|
}
|
|
|
|
while (not bearer_pdu_queue.second.empty()) {
|
|
|
|
}
|
|
|
|
srslte::unique_byte_buffer_t pdu;
|
|
|
|
void ttcn3_ue::send_queued_data()
|
|
|
|
bearer_pdu_queue.second.try_pop(&pdu);
|
|
|
|
{
|
|
|
|
loop_back_pdu_with_tft(bearer_pdu_queue.first, std::move(pdu));
|
|
|
|
if (!stack->is_rrc_connected()) {
|
|
|
|
}
|
|
|
|
log.info("RRC not connected, requesting NAS attach\n");
|
|
|
|
|
|
|
|
if (not stack->switch_on()) {
|
|
|
|
|
|
|
|
log.warning("Could not reestablish the connection\n");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
stack->defer_callback(500, [&]() { send_queued_data(); });
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for (auto& bearer_pdu_queue : pdu_queue) {
|
|
|
|
|
|
|
|
log.info("Delivering %zd buffered PDUs for LCID=%d\n", bearer_pdu_queue.second.size(), bearer_pdu_queue.first);
|
|
|
|
|
|
|
|
while (not bearer_pdu_queue.second.empty()) {
|
|
|
|
|
|
|
|
srslte::unique_byte_buffer_t pdu;
|
|
|
|
|
|
|
|
bearer_pdu_queue.second.try_pop(&pdu);
|
|
|
|
|
|
|
|
loop_back_pdu_with_tft(bearer_pdu_queue.first, std::move(pdu));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|