From 39fbe46845c7677623d506108935323a7a1261d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Love=20H=C3=B6rnquist=20=C3=85strand?= Date: Fri, 7 Apr 2006 18:50:40 +0000 Subject: [PATCH] (tokey): catch warnings, free memory after use. Based on Coverity NetBSD CID#1894 git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@17010 ec53bebd-3082-4978-b11e-865c3cabbd6b --- kdc/string2key.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/kdc/string2key.c b/kdc/string2key.c index 2f841e03c..df59feedb 100644 --- a/kdc/string2key.c +++ b/kdc/string2key.c @@ -74,17 +74,24 @@ tokey(krb5_context context, krb5_salt salt, const char *label) { + krb5_error_code ret; int i; krb5_keyblock key; char *e; - krb5_string_to_key_salt(context, enctype, pw, salt, &key); - krb5_enctype_to_string(context, enctype, &e); + + ret = krb5_string_to_key_salt(context, enctype, pw, salt, &key); + if (ret) + krb5_err(context, 1, ret, "krb5_string_to_key_salt"); + ret = krb5_enctype_to_string(context, enctype, &e); + if (ret) + krb5_err(context, 1, ret, "krb5_enctype_to_string"); printf(label, e); printf(": "); for(i = 0; i < key.keyvalue.length; i++) printf("%02x", ((unsigned char*)key.keyvalue.data)[i]); printf("\n"); krb5_free_keyblock_contents(context, &key); + free(e); } int