summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2011-03-04 14:33:02 +0100
committerStefan Metzmacher <metze@samba.org>2011-03-04 21:19:05 +0100
commita511d37d83be3bf47440527ad2b54fd124ba97a5 (patch)
treee683c1231b24abfd1c90b61108d118cf85e0ad7e
parent2c7c3d03d5c6b99370f9007aa6fe874d36512be2 (diff)
downloadsamba-a511d37d83be3bf47440527ad2b54fd124ba97a5.tar.gz
samba-a511d37d83be3bf47440527ad2b54fd124ba97a5.tar.bz2
samba-a511d37d83be3bf47440527ad2b54fd124ba97a5.zip
HEIMDAL:kdc: correctly propagate HDB_ERR_NOT_FOUND_HERE to via tgs_parse_request() and _kdc_tgs_rep()
metze
-rw-r--r--source4/heimdal/kdc/krb5tgs.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/source4/heimdal/kdc/krb5tgs.c b/source4/heimdal/kdc/krb5tgs.c
index 4af4c29ceb..037934f2a6 100644
--- a/source4/heimdal/kdc/krb5tgs.c
+++ b/source4/heimdal/kdc/krb5tgs.c
@@ -1179,6 +1179,7 @@ tgs_parse_request(krb5_context context,
kdc_log(context, config, 5, "Ticket-granting ticket account %s does not have secrets at this KDC, need to proxy", p);
if (ret == 0)
free(p);
+ ret = HDB_ERR_NOT_FOUND_HERE;
goto out;
} else if(ret){
const char *msg = krb5_get_error_message(context, ret);
@@ -2239,6 +2240,10 @@ _kdc_tgs_rep(krb5_context context,
&auth_data,
&replykey,
&rk_is_subkey);
+ if (ret == HDB_ERR_NOT_FOUND_HERE) {
+ /* kdc_log() is called in tgs_parse_request() */
+ goto out;
+ }
if (ret) {
kdc_log(context, config, 0,
"Failed parsing TGS-REQ from %s", from);