Moved check if packet already encoded to ike_sa, avoids message() hook invocation twice

This commit is contained in:
Martin Willi
2011-01-05 16:45:52 +01:00
parent a6da3795d6
commit 9ca5d0280e
3 changed files with 16 additions and 17 deletions
+5
View File
@@ -891,6 +891,11 @@ METHOD(ike_sa_t, update_hosts, void,
METHOD(ike_sa_t, generate_message, status_t,
private_ike_sa_t *this, message_t *message, packet_t **packet)
{
if (message->is_encoded(message))
{ /* already done */
*packet = message->get_packet(message);
return SUCCESS;
}
this->stats[STAT_OUTBOUND] = time_monotonic(NULL);
message->set_ike_sa_id(message, this->ike_sa_id);
charon->bus->message(charon->bus, message, FALSE);