summaryrefslogtreecommitdiff
path: root/source4/kdc
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2011-09-29 05:22:27 +1000
committerAndrew Tridgell <tridge@samba.org>2011-10-04 15:08:57 +1100
commit5717da34b92cfb9385d9275df5b48c70254ce78f (patch)
tree673d35f1acc9c57cd25d7533a49783991d873f2b /source4/kdc
parent6356f4c25524e81cad3301a5cdf907272612948f (diff)
downloadsamba-5717da34b92cfb9385d9275df5b48c70254ce78f.tar.gz
s4-kdc: treat a kvno of 255 as unspecified
windows sometimes sends us a kvno of 255 for inter-domain trusts. We don't yet know why it does this, but it seems that we need to treat this as an unspecified kvno Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'source4/kdc')
-rw-r--r--source4/kdc/db-glue.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/source4/kdc/db-glue.c b/source4/kdc/db-glue.c
index 6634d0c180d..2ed32192f88 100644
--- a/source4/kdc/db-glue.c
+++ b/source4/kdc/db-glue.c
@@ -1382,7 +1382,10 @@ krb5_error_code samba_kdc_fetch(krb5_context context,
krb5_error_code ret = HDB_ERR_NOENTRY;
TALLOC_CTX *mem_ctx;
unsigned int krbtgt_number;
- if (flags & HDB_F_KVNO_SPECIFIED) {
+ /* w2k8r2 sometimes gives us a kvno of 255 for inter-domain
+ trust tickets. We don't yet know what this means, but we do
+ seem to need to treat it as unspecified */
+ if ((flags & HDB_F_KVNO_SPECIFIED) && kvno != 255) {
krbtgt_number = SAMBA_KVNO_GET_KRBTGT(kvno);
if (kdc_db_ctx->rodc) {
if (krbtgt_number != kdc_db_ctx->my_krbtgt_number) {