aboutsummaryrefslogtreecommitdiffstats
path: root/src/libtls/tls_fragmentation.c
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2010-09-03 09:32:39 +0200
committerMartin Willi <martin@revosec.ch>2010-09-03 09:33:15 +0200
commitccb65463e7b0bb338e81a47a7dd4e916fe5d6c41 (patch)
tree10cf6884656ecfa939820e858df4ca28bb0bdb54 /src/libtls/tls_fragmentation.c
parented60dfa14fa48e5edb5f99e5423c3cd5549d08f0 (diff)
downloadstrongswan-ccb65463e7b0bb338e81a47a7dd4e916fe5d6c41.tar.bz2
strongswan-ccb65463e7b0bb338e81a47a7dd4e916fe5d6c41.tar.xz
Check for queued TLS alerts after each handshake part
Diffstat (limited to 'src/libtls/tls_fragmentation.c')
-rw-r--r--src/libtls/tls_fragmentation.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/libtls/tls_fragmentation.c b/src/libtls/tls_fragmentation.c
index 950d3011c..3ef232806 100644
--- a/src/libtls/tls_fragmentation.c
+++ b/src/libtls/tls_fragmentation.c
@@ -314,6 +314,10 @@ static status_t build_handshake(private_tls_fragmentation_t *this)
switch (status)
{
case NEED_MORE:
+ if (this->alert->fatal(this->alert))
+ {
+ break;
+ }
msg->write_uint8(msg, type);
msg->write_data24(msg, hs->get_buf(hs));
DBG2(DBG_TLS, "sending TLS %N handshake (%u bytes)",