call is_complete() if tls protocol returns with SUCCESS

This commit is contained in:
Andreas Steffen
2010-11-16 11:52:06 +01:00
parent 2fe06d33c3
commit 4d178affbb
+8 -4
View File
@@ -303,17 +303,21 @@ METHOD(tls_eap_t, process, status_t,
DBG2(DBG_TLS, "received %N acknowledgement packet", DBG2(DBG_TLS, "received %N acknowledgement packet",
eap_type_names, this->type); eap_type_names, this->type);
status = build_pkt(this, pkt->identifier, out); status = build_pkt(this, pkt->identifier, out);
if (status == INVALID_STATE && if (status == INVALID_STATE && this->tls->is_complete(this->tls))
this->tls->is_complete(this->tls))
{ {
return SUCCESS; return SUCCESS;
} }
return status; return status;
} }
status = process_pkt(this, pkt); status = process_pkt(this, pkt);
if (status != NEED_MORE) switch (status)
{ {
return status; case NEED_MORE:
break;
case SUCCESS:
return this->tls->is_complete(this->tls) ? SUCCESS : FAILED;
default:
return status;
} }
} }
status = build_pkt(this, pkt->identifier, out); status = build_pkt(this, pkt->identifier, out);