From 21f40fe891009bf78ff5b7af1e51ccef572002c5 Mon Sep 17 00:00:00 2001 From: Martin Willi Date: Tue, 19 Mar 2013 16:46:43 +0100 Subject: [PATCH] Acquire HA segment lock while sending heartbeat --- src/libcharon/plugins/ha/ha_segments.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/libcharon/plugins/ha/ha_segments.c b/src/libcharon/plugins/ha/ha_segments.c index 6c21e8981..45ffa875a 100644 --- a/src/libcharon/plugins/ha/ha_segments.c +++ b/src/libcharon/plugins/ha/ha_segments.c @@ -333,6 +333,7 @@ static job_requeue_t send_status(private_ha_segments_t *this) message = ha_message_create(HA_STATUS); + this->mutex->lock(this->mutex); for (i = 1; i <= this->count; i++) { if (this->active & SEGMENTS_BIT(i)) @@ -340,6 +341,7 @@ static job_requeue_t send_status(private_ha_segments_t *this) message->add_attribute(message, HA_SEGMENT, i); } } + this->mutex->unlock(this->mutex); this->socket->push(this->socket, message); message->destroy(message);