summaryrefslogtreecommitdiff
path: root/source4/kdc
diff options
context:
space:
mode:
authorAndreas Schneider <asn@samba.org>2016-01-20 13:25:16 +0100
committerAndrew Bartlett <abartlet@samba.org>2016-03-17 07:57:49 +0100
commitabfa8e335c685e1251c2fe503949d99e1da7ac3f (patch)
treeb138d55d34c774be369b868c6bbf8ee507b82627 /source4/kdc
parent859c625c8235d5e6bbef3d2d98bdd6579540ecf4 (diff)
downloadsamba-abfa8e335c685e1251c2fe503949d99e1da7ac3f.tar.gz
mit-kdb: Add missing SDB_F_FOR_AS_REQ for AS requests
This correctly handles enterprise principals and ticket renewal. Signed-off-by: Andreas Schneider <asn@samba.org> Signed-off-by: Guenther Deschner <gd@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Pair-Programmed-With: Guenther Deschner <gd@samba.org> Reviewed-by: Sumit Bose <sbose@redhat.com> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Autobuild-User(master): Andrew Bartlett <abartlet@samba.org> Autobuild-Date(master): Thu Mar 17 07:57:49 CET 2016 on sn-devel-144
Diffstat (limited to 'source4/kdc')
-rw-r--r--source4/kdc/mit_samba.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/source4/kdc/mit_samba.c b/source4/kdc/mit_samba.c
index 8abac9d386e..57af4b71b1f 100644
--- a/source4/kdc/mit_samba.c
+++ b/source4/kdc/mit_samba.c
@@ -196,7 +196,11 @@ int mit_samba_get_principal(struct mit_samba_context *ctx,
}
if (kflags & (KRB5_KDB_FLAG_CLIENT_REFERRALS_ONLY |
KRB5_KDB_FLAG_INCLUDE_PAC)) {
- sflags |= SDB_F_GET_CLIENT;
+ /*
+ * KRB5_KDB_FLAG_CLIENT_REFERRALS_ONLY is equal to
+ * SDB_F_FOR_AS_REQ
+ */
+ sflags |= SDB_F_GET_CLIENT|SDB_F_FOR_AS_REQ;
} else if (ks_is_tgs_principal(ctx, principal)) {
sflags |= SDB_F_GET_KRBTGT;
} else {