From 9da65eaeb9ddfc00ba205378da23eec3d84b4df0 Mon Sep 17 00:00:00 2001 From: Thomas Egerer Date: Tue, 16 Feb 2016 12:55:37 +0100 Subject: [PATCH] task-manager: Add retransmit count to retransmit send alert Signed-off-by: Thomas Egerer --- src/libcharon/bus/bus.h | 5 +++-- src/libcharon/sa/ikev1/task_manager_v1.c | 3 ++- src/libcharon/sa/ikev2/task_manager_v2.c | 3 ++- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/libcharon/bus/bus.h b/src/libcharon/bus/bus.h index 8746cb89d..182ced7ab 100644 --- a/src/libcharon/bus/bus.h +++ b/src/libcharon/bus/bus.h @@ -101,8 +101,9 @@ enum alert_t { /** received IKE message with invalid body, argument is message_t*, * followed by a status_t result returned by message_t.parse_body(). */ ALERT_PARSE_ERROR_BODY, - /** sending a retransmit for a message, argument is packet_t, if the message - * got fragmented only the first fragment is passed */ + /** sending a retransmit for a message, arguments are packet_t and number + * of the retransmit, if the message got fragmented only the first fragment + * is passed */ ALERT_RETRANSMIT_SEND, /** sending retransmits timed out, argument is packet_t, if available and if * the message got fragmented only the first fragment is passed */ diff --git a/src/libcharon/sa/ikev1/task_manager_v1.c b/src/libcharon/sa/ikev1/task_manager_v1.c index 273936c46..ea1177d57 100644 --- a/src/libcharon/sa/ikev1/task_manager_v1.c +++ b/src/libcharon/sa/ikev1/task_manager_v1.c @@ -361,7 +361,8 @@ static status_t retransmit_packet(private_task_manager_t *this, uint32_t seqnr, DBG1(DBG_IKE, "sending retransmit %u of %s message ID %u, seq %u", retransmitted, seqnr < RESPONDING_SEQ ? "request" : "response", mid, seqnr < RESPONDING_SEQ ? seqnr : seqnr - RESPONDING_SEQ); - charon->bus->alert(charon->bus, ALERT_RETRANSMIT_SEND, packet); + charon->bus->alert(charon->bus, ALERT_RETRANSMIT_SEND, packet, + retransmitted); } send_packets(this, packets); lib->scheduler->schedule_job_ms(lib->scheduler, (job_t*) diff --git a/src/libcharon/sa/ikev2/task_manager_v2.c b/src/libcharon/sa/ikev2/task_manager_v2.c index a7989c507..abbffb29d 100644 --- a/src/libcharon/sa/ikev2/task_manager_v2.c +++ b/src/libcharon/sa/ikev2/task_manager_v2.c @@ -352,7 +352,8 @@ METHOD(task_manager_t, retransmit, status_t, { DBG1(DBG_IKE, "retransmit %d of request with message ID %d", this->initiating.retransmitted, message_id); - charon->bus->alert(charon->bus, ALERT_RETRANSMIT_SEND, packet); + charon->bus->alert(charon->bus, ALERT_RETRANSMIT_SEND, packet, + this->initiating.retransmitted); } if (!mobike) {