summaryrefslogtreecommitdiff
path: root/source4/kdc
diff options
context:
space:
mode:
authorAndreas Schneider <asn@samba.org>2016-02-15 08:31:16 +0100
committerAlexander Bokovoy <ab@samba.org>2016-06-02 12:48:13 +0200
commit7019103bab82b4e8fb80b38712ca24064b8d09a5 (patch)
tree420e6c64a4baa9decffb08dcc0742c9e32e9ae18 /source4/kdc
parent7a1fd661b0e6282c4e97d7baba399d5ebee2f9f2 (diff)
downloadsamba-7019103bab82b4e8fb80b38712ca24064b8d09a5.tar.gz
mit_samba: Return 0 in case of a wrong realm
The MIT KDC will deal with this correctly for us. Signed-off-by: Andreas Schneider <asn@samba.org> Reviewed-by: Alexander Bokovoy <ab@samba.org>
Diffstat (limited to 'source4/kdc')
-rw-r--r--source4/kdc/mit_samba.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/source4/kdc/mit_samba.c b/source4/kdc/mit_samba.c
index 57af4b71b1f..70877a9f0a4 100644
--- a/source4/kdc/mit_samba.c
+++ b/source4/kdc/mit_samba.c
@@ -220,7 +220,12 @@ int mit_samba_get_principal(struct mit_samba_context *ctx,
ret = KRB5_KDB_NOENTRY;
goto done;
case SDB_ERR_WRONG_REALM:
- ret = KRB5KDC_ERR_WRONG_REALM;
+ /*
+ * If we have a wrong realm e.g. if we try get a cross forest
+ * ticket, we return a ticket with the correct realm. The KDC
+ * will detect this an return the appropriate return code.
+ */
+ ret = 0;
break;
case SDB_ERR_NOT_FOUND_HERE:
/* FIXME: RODC support */