diff options
Diffstat (limited to 'src/libcharon/plugins/eap_ttls/eap_ttls.c')
-rw-r--r-- | src/libcharon/plugins/eap_ttls/eap_ttls.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/libcharon/plugins/eap_ttls/eap_ttls.c b/src/libcharon/plugins/eap_ttls/eap_ttls.c index a3cfcd1f7..e2f09a70c 100644 --- a/src/libcharon/plugins/eap_ttls/eap_ttls.c +++ b/src/libcharon/plugins/eap_ttls/eap_ttls.c @@ -254,7 +254,7 @@ static status_t process_buf(private_eap_ttls_t *this) { status_t status; - status = this->tls->process(this->tls, this->input); + status = this->tls->process(this->tls, this->input.ptr, this->input.len); if (status != NEED_MORE) { return status; @@ -263,7 +263,8 @@ static status_t process_buf(private_eap_ttls_t *this) this->inpos = 0; chunk_free(&this->output); - return this->tls->build(this->tls, &this->output); + this->output = chunk_alloc(EAP_TTLS_FRAGMENT_LEN); + return this->tls->build(this->tls, this->output.ptr, &this->output.len, NULL); } METHOD(eap_method_t, process, status_t, |