aboutsummaryrefslogtreecommitdiffstats
path: root/src/libcharon/plugins/ha/ha_message.c
diff options
context:
space:
mode:
authorTobias Brunner <tobias@strongswan.org>2012-02-29 14:47:09 +0100
committerTobias Brunner <tobias@strongswan.org>2012-03-20 17:31:40 +0100
commit1726795fa9abe4b32ecbd7abd721ecced6c9af9c (patch)
tree56a45602079ffd2c64f2151b2d3de7a01a16d8aa /src/libcharon/plugins/ha/ha_message.c
parent8254e7ecb8aff19b1b32fb34723be6c31e0b2f9f (diff)
downloadstrongswan-1726795fa9abe4b32ecbd7abd721ecced6c9af9c.tar.bz2
strongswan-1726795fa9abe4b32ecbd7abd721ecced6c9af9c.tar.xz
Store the major IKE version on ike_sa_id_t.
Diffstat (limited to 'src/libcharon/plugins/ha/ha_message.c')
-rw-r--r--src/libcharon/plugins/ha/ha_message.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/libcharon/plugins/ha/ha_message.c b/src/libcharon/plugins/ha/ha_message.c
index c7c624d32..52317e532 100644
--- a/src/libcharon/plugins/ha/ha_message.c
+++ b/src/libcharon/plugins/ha/ha_message.c
@@ -67,6 +67,7 @@ typedef struct ike_sa_id_encoding_t ike_sa_id_encoding_t;
* Encoding if an ike_sa_id_t
*/
struct ike_sa_id_encoding_t {
+ u_int8_t ike_version;
u_int64_t initiator_spi;
u_int64_t responder_spi;
u_int8_t initiator;
@@ -157,6 +158,7 @@ METHOD(ha_message_t, add_attribute, void,
enc = (ike_sa_id_encoding_t*)(this->buf.ptr + this->buf.len);
this->buf.len += sizeof(ike_sa_id_encoding_t);
enc->initiator = id->is_initiator(id);
+ enc->ike_version = id->get_ike_version(id);
enc->initiator_spi = id->get_initiator_spi(id);
enc->responder_spi = id->get_responder_spi(id);
break;
@@ -357,8 +359,9 @@ METHOD(enumerator_t, attribute_enumerate, bool,
return FALSE;
}
enc = (ike_sa_id_encoding_t*)(this->buf.ptr);
- value->ike_sa_id = ike_sa_id_create(enc->initiator_spi,
- enc->responder_spi, enc->initiator);
+ value->ike_sa_id = ike_sa_id_create(enc->ike_version,
+ enc->initiator_spi, enc->responder_spi,
+ enc->initiator);
*attr_out = attr;
this->cleanup = (void*)value->ike_sa_id->destroy;
this->cleanup_data = value->ike_sa_id;