From df68c9c378f0d2a0de8dce5b0016fe7f93858972 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Love=20H=C3=B6rnquist=20=C3=85strand?= Date: Mon, 2 Oct 2006 10:49:56 +0000 Subject: [PATCH] (digest_request): if NULL is passed in as realm, use default realm. git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@18197 ec53bebd-3082-4978-b11e-865c3cabbd6b --- lib/krb5/digest.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/lib/krb5/digest.c b/lib/krb5/digest.c index f7e2abea5..28f0b01bc 100644 --- a/lib/krb5/digest.c +++ b/lib/krb5/digest.c @@ -247,7 +247,8 @@ digest_request(krb5_context context, krb5_crypto crypto = NULL; krb5_auth_context ac = NULL; krb5_principal principal = NULL; - krb5_ccache id; + krb5_ccache id = NULL; + krb5_realm r = NULL; krb5_data_zero(&data); krb5_data_zero(&data2); @@ -259,6 +260,13 @@ digest_request(krb5_context context, } else id = ccache; + if (realm == NULL) { + ret = krb5_get_default_realm(context, &r); + if (ret) + goto out; + } else + r = realm; + /* * */ @@ -373,8 +381,10 @@ digest_request(krb5_context context, } out: - if (ccache == NULL) + if (ccache == NULL && id) krb5_cc_close(context, id); + if (realm == NULL && r) + free(r); if (crypto) krb5_crypto_destroy(context, crypto); if (ac)