From: Martin Willi Date: Wed, 8 May 2013 13:19:52 +0000 (+0200) Subject: Use ref_get() to make sure IKE_SA unique IDs are unique X-Git-Tag: 5.1.0dr1~121^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=3568abe7be1efdd8d95b6711a552fefc8089fff8;p=thirdparty%2Fstrongswan.git Use ref_get() to make sure IKE_SA unique IDs are unique --- diff --git a/src/libcharon/sa/ike_sa.c b/src/libcharon/sa/ike_sa.c index d7a9076b8a..e25191782e 100644 --- a/src/libcharon/sa/ike_sa.c +++ b/src/libcharon/sa/ike_sa.c @@ -2169,7 +2169,7 @@ ike_sa_t * ike_sa_create(ike_sa_id_t *ike_sa_id, bool initiator, ike_version_t version) { private_ike_sa_t *this; - static u_int32_t unique_id = 0; + static refcount_t unique_id = 0; if (version == IKE_ANY) { /* prefer IKEv2 if protocol not specified */ @@ -2281,7 +2281,7 @@ ike_sa_t * ike_sa_create(ike_sa_id_t *ike_sa_id, bool initiator, .other_auth = auth_cfg_create(), .my_auths = linked_list_create(), .other_auths = linked_list_create(), - .unique_id = ++unique_id, + .unique_id = ref_get(&unique_id), .peer_addresses = linked_list_create(), .my_vips = linked_list_create(), .other_vips = linked_list_create(),