From 9cc606d22a479c0ee055cb848b762e3604b497bc Mon Sep 17 00:00:00 2001 From: Andreas Steffen Date: Mon, 12 Aug 2013 11:52:32 +0200 Subject: Fixed memory leak in SASL PLAIN --- src/libpttls/sasl/sasl_plain/sasl_plain.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/libpttls/sasl/sasl_plain/sasl_plain.c') diff --git a/src/libpttls/sasl/sasl_plain/sasl_plain.c b/src/libpttls/sasl/sasl_plain/sasl_plain.c index fdb3523cb..019c1b011 100644 --- a/src/libpttls/sasl/sasl_plain/sasl_plain.c +++ b/src/libpttls/sasl/sasl_plain/sasl_plain.c @@ -117,11 +117,14 @@ METHOD(sasl_mechanism_t, build_client, status_t, len = snprintf(buf, sizeof(buf), "%s%c%Y%c%.*s", "", 0, this->client, 0, (int)password.len, password.ptr); + shared->destroy(shared); + if (len < 0 || len >= sizeof(buf)) { return FAILED; } *message = chunk_clone(chunk_create(buf, len)); + return NEED_MORE; } -- cgit v1.2.3