summaryrefslogtreecommitdiffstats
path: root/src/kdc
diff options
context:
space:
mode:
authorNalin Dahyabhai <nalin@dahyabhai.net>2014-02-20 16:01:49 -0500
committerTom Yu <tlyu@mit.edu>2014-03-18 17:15:17 -0400
commit90cbf4eb60d8ec3c083195ba4a050a31ea36be0b (patch)
tree01ec5592fc8894a9756a170c0baee70343a92977 /src/kdc
parent3c14324baffdc1848f75924deaf69e43f30e6621 (diff)
downloadkrb5-90cbf4eb60d8ec3c083195ba4a050a31ea36be0b.tar.gz
krb5-90cbf4eb60d8ec3c083195ba4a050a31ea36be0b.tar.xz
krb5-90cbf4eb60d8ec3c083195ba4a050a31ea36be0b.zip
Fix returning KDB_NOENTRY in find_alternate_tgs()
After searching for a cross-realm TGS entry to provide to a client as a referral, if we're all set to return a success code but aren't actually returning an entry, we should be returning an error. We might not do so because we don't compare the right value against NULL. This corrects an error in a redundant check in the patch for CVE-2013-1417. The error in the check cannot occur in practice because the other part of the patch for CVE-2013-1417 prevents it, but static analyzers can flag the erroneous check. [tlyu@mit.edu: edit commit message] ticket: 7881 (new) tags: pullup target_version: 1.12.2
Diffstat (limited to 'src/kdc')
-rw-r--r--src/kdc/do_tgs_req.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/kdc/do_tgs_req.c b/src/kdc/do_tgs_req.c
index ef1aeed87..49a6ea68c 100644
--- a/src/kdc/do_tgs_req.c
+++ b/src/kdc/do_tgs_req.c
@@ -1117,7 +1117,7 @@ find_alternate_tgs(kdc_realm_t *kdc_active_realm, krb5_principal princ,
goto cleanup;
}
cleanup:
- if (retval == 0 && server_ptr == NULL)
+ if (retval == 0 && *server_ptr == NULL)
retval = KRB5_KDB_NOENTRY;
if (retval != 0)
*status = "UNKNOWN_SERVER";