From: Martin Willi Date: Tue, 19 Mar 2013 15:46:43 +0000 (+0100) Subject: Acquire HA segment lock while sending heartbeat X-Git-Tag: 5.0.3rc1~25 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=21f40fe891009bf78ff5b7af1e51ccef572002c5;p=thirdparty%2Fstrongswan.git Acquire HA segment lock while sending heartbeat --- diff --git a/src/libcharon/plugins/ha/ha_segments.c b/src/libcharon/plugins/ha/ha_segments.c index 6c21e8981b..45ffa875aa 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);