aboutsummaryrefslogtreecommitdiffstats
path: root/src/libtls/tls_fragmentation.c
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2013-02-14 17:06:07 +0100
committerMartin Willi <martin@revosec.ch>2013-02-14 17:06:07 +0100
commit8b56943222a0ec3e45f10186d6f6700583783be9 (patch)
tree84988f45916036348bae0be64a6bde50a2756f4f /src/libtls/tls_fragmentation.c
parent46ae05dd174403d406fcfee2328a2b3b6f4c0eff (diff)
parent16ef69d70a1c8d767ff690c5062a4837617da5d7 (diff)
downloadstrongswan-8b56943222a0ec3e45f10186d6f6700583783be9.tar.bz2
strongswan-8b56943222a0ec3e45f10186d6f6700583783be9.tar.xz
Merge branch 'pt-tls'
Diffstat (limited to 'src/libtls/tls_fragmentation.c')
-rw-r--r--src/libtls/tls_fragmentation.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/libtls/tls_fragmentation.c b/src/libtls/tls_fragmentation.c
index c76376b43..6e4347e3c 100644
--- a/src/libtls/tls_fragmentation.c
+++ b/src/libtls/tls_fragmentation.c
@@ -223,7 +223,7 @@ static status_t process_application(private_tls_fragmentation_t *this,
continue;
case SUCCESS:
this->application_finished = TRUE;
- return SUCCESS;
+ /* FALL */
case FAILED:
default:
this->alert->add(this->alert, TLS_FATAL, TLS_CLOSE_NOTIFY);
@@ -368,7 +368,7 @@ static status_t build_application(private_tls_fragmentation_t *this)
break;
case SUCCESS:
this->application_finished = TRUE;
- break;
+ /* FALL */
case FAILED:
default:
this->alert->add(this->alert, TLS_FATAL, TLS_CLOSE_NOTIFY);
@@ -391,6 +391,10 @@ METHOD(tls_fragmentation_t, build, status_t,
this->state = ALERT_SENT;
return INVALID_STATE;
case ALERT_SENT:
+ if (this->application_finished)
+ {
+ return SUCCESS;
+ }
return FAILED;
case ALERT_NONE:
break;