aboutsummaryrefslogtreecommitdiffstats
path: root/src/charon/encoding
diff options
context:
space:
mode:
authorMartin Willi <martin@strongswan.org>2007-03-05 22:02:14 +0000
committerMartin Willi <martin@strongswan.org>2007-03-05 22:02:14 +0000
commit02b3101b670dca4b6e83ce41cf28afe605b852e2 (patch)
tree5bbd00c57847ae0fdbc5a808ff0b8aa613b27a2f /src/charon/encoding
parent0b0eb6557369c4bc90a70568581b0d80b8d37e0b (diff)
downloadstrongswan-02b3101b670dca4b6e83ce41cf28afe605b852e2.tar.bz2
strongswan-02b3101b670dca4b6e83ce41cf28afe605b852e2.tar.xz
fixed double free bug
Diffstat (limited to 'src/charon/encoding')
-rw-r--r--src/charon/encoding/payloads/sa_payload.c11
1 files changed, 2 insertions, 9 deletions
diff --git a/src/charon/encoding/payloads/sa_payload.c b/src/charon/encoding/payloads/sa_payload.c
index 7ae0f9532..e264b2123 100644
--- a/src/charon/encoding/payloads/sa_payload.c
+++ b/src/charon/encoding/payloads/sa_payload.c
@@ -119,15 +119,8 @@ static status_t verify(private_sa_payload_t *this)
while(iterator->iterate(iterator, (void**)&current_proposal))
{
current_number = current_proposal->get_proposal_number(current_proposal);
- if (current_number > expected_number)
- {
- if (first)
- {
- DBG1(DBG_ENC, "first proposal is not proposal #1");
- status = FAILED;
- break;
- }
-
+ if (current_number < expected_number)
+ {
if (current_number != (expected_number + 1))
{
DBG1(DBG_ENC, "proposal number is %d, excepted %d or %d",