From 66bb4f63b24e8adcf8c79be2625a8deb56d533ee Mon Sep 17 00:00:00 2001 From: Tobias Brunner Date: Mon, 14 Jan 2013 12:11:24 +0100 Subject: Properly send IKEv1 packets if no ike_cfg is known yet This applies for error notifies. --- src/libcharon/sa/ikev1/task_manager_v1.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/libcharon') diff --git a/src/libcharon/sa/ikev1/task_manager_v1.c b/src/libcharon/sa/ikev1/task_manager_v1.c index 7d6e7ac91..8a4761d5c 100644 --- a/src/libcharon/sa/ikev1/task_manager_v1.c +++ b/src/libcharon/sa/ikev1/task_manager_v1.c @@ -411,13 +411,16 @@ static bool send_fragment(private_task_manager_t *this, bool request, static bool send_packet(private_task_manager_t *this, bool request, packet_t *packet) { - fragmentation_t fragmentation; + fragmentation_t fragmentation = FRAGMENTATION_NO; ike_cfg_t *ike_cfg; host_t *src, *dst; chunk_t data; ike_cfg = this->ike_sa->get_ike_cfg(this->ike_sa); - fragmentation = ike_cfg->fragmentation(ike_cfg); + if (ike_cfg) + { + fragmentation = ike_cfg->fragmentation(ike_cfg); + } data = packet->get_data(packet); if (data.len > this->frag.size && (fragmentation == FRAGMENTATION_FORCE || (this->ike_sa->supports_extension(this->ike_sa, EXT_IKE_FRAGMENTATION) && -- cgit v1.2.3