aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/srtp
diff options
context:
space:
mode:
authorFlorin Coras <fcoras@cisco.com>2022-02-04 13:31:25 -0800
committerDave Barach <openvpp@barachs.net>2022-02-05 21:19:53 +0000
commit3e157100b57237cc694ae3d002cf736b36043c3c (patch)
treeecfaa3f58fba287d3c097790c58550c7b1c418fb /src/plugins/srtp
parent6eaeea9003590ba46809c8d9f0023bbe8b78339f (diff)
session: track bytes dequeued in snd params
Also reset send params flags before calling transports to avoid explicit resets in all transports. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I1da7b3fab009728e7fee4199425ced933fa8a122
Diffstat (limited to 'src/plugins/srtp')
-rw-r--r--src/plugins/srtp/srtp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/plugins/srtp/srtp.c b/src/plugins/srtp/srtp.c
index 62274ba635e..cc4b59de569 100644
--- a/src/plugins/srtp/srtp.c
+++ b/src/plugins/srtp/srtp.c
@@ -238,6 +238,7 @@ srtp_ctx_write (srtp_tc_t *ctx, session_t *app_session,
us = session_get_from_handle (ctx->srtp_session_handle);
to_deq = svm_fifo_max_dequeue_cons (app_session->tx_fifo);
mq = session_main_get_vpp_event_queue (us->thread_index);
+ sp->bytes_dequeued = to_deq;
while (to_deq > 0)
{
@@ -296,6 +297,9 @@ done:
session_transport_closed_notify (&ctx->connection);
}
+ ASSERT (sp->bytes_dequeued >= to_deq);
+ sp->bytes_dequeued -= to_deq;
+
return n_wrote > 0 ? clib_max (n_wrote / TRANSPORT_PACER_MIN_MSS, 1) : 0;
}
@@ -812,7 +816,6 @@ srtp_custom_tx_callback (void *session, transport_send_params_t *sp)
SESSION_STATE_TRANSPORT_CLOSED))
return 0;
- sp->flags = 0;
ctx = srtp_ctx_get_w_thread (app_session->connection_index,
app_session->thread_index);
if (PREDICT_FALSE (ctx->is_migrated))