- added cloning of already generated packet
authorJan Hutter <jhutter@hsr.ch>
Mon, 21 Nov 2005 10:58:52 +0000 (10:58 -0000)
committerJan Hutter <jhutter@hsr.ch>
Mon, 21 Nov 2005 10:58:52 +0000 (10:58 -0000)
Source/charon/message.c

index 0e67109..78d5447 100644 (file)
@@ -442,6 +442,12 @@ static status_t generate(private_message_t *this, packet_t **packet)
        linked_list_iterator_t *iterator;
        status_t status;
        
+       if (this->packet != NULL)
+       {
+               /* already generated packet is just cloned */
+               this->packet->clone(this->packet, packet);
+       }
+       
        if (this->exchange_type == EXCHANGE_TYPE_UNDEFINED)
        {
                return INVALID_STATE;
@@ -742,7 +748,7 @@ static status_t destroy (private_message_t *this)
        this->payloads->destroy(this->payloads);
        this->parser->destroy(this->parser);
        
-allocator_free(this);
+       allocator_free(this);
        return SUCCESS;
 }