From f719d20b6c850e8db4bd1f17969a04b3d80e4a2a Mon Sep 17 00:00:00 2001 From: Jon Trulson Date: Fri, 26 Dec 2014 14:12:10 -0700 Subject: [PATCH] ttauth: Coverity (memory corruption) --- cde/lib/tt/bin/ttauth/process.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cde/lib/tt/bin/ttauth/process.c b/cde/lib/tt/bin/ttauth/process.c index bbaddd4f3..bafd259c3 100644 --- a/cde/lib/tt/bin/ttauth/process.c +++ b/cde/lib/tt/bin/ttauth/process.c @@ -1252,7 +1252,7 @@ static int do_add (inputfilename, lineno, argc, argv) char *netid; char *authname; char *authdata_hex; - char *authdata; + char *authdata = NULL; int protodata_len, authdata_len; _tt_AuthFileEntry *entry; _tt_AuthFileEntryList *list; @@ -1345,6 +1345,9 @@ static int do_add (inputfilename, lineno, argc, argv) entry->auth_data_length = authdata_len; entry->auth_data = authdata; + /* Avoid a double free later on in the event of an error */ + authdata = NULL; + if (!entry->protocol_name || (!entry->protocol_data && entry->protocol_data_length > 0) || !entry->network_id || !entry->auth_name ||