summaryrefslogtreecommitdiff
path: root/source4/kdc
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2008-10-01 16:00:33 -0700
committerAndrew Bartlett <abartlet@samba.org>2008-10-06 14:28:26 -0700
commit912209ac84395ef0e2fca0556b1e4bec34367b5c (patch)
tree1356b626c98255a716eb17cecae2754dc7908234 /source4/kdc
parent320d402180ac2d8505aec2664feaddbd63e5b17e (diff)
downloadsamba-912209ac84395ef0e2fca0556b1e4bec34367b5c.tar.gz
Use the trust password version as kvno for trusts in Kerberos.
Diffstat (limited to 'source4/kdc')
-rw-r--r--source4/kdc/hdb-samba4.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/source4/kdc/hdb-samba4.c b/source4/kdc/hdb-samba4.c
index d7317f17d4f..818c4a12fda 100644
--- a/source4/kdc/hdb-samba4.c
+++ b/source4/kdc/hdb-samba4.c
@@ -717,6 +717,7 @@ static krb5_error_code LDB_trust_message2entry(krb5_context context, HDB *db,
enum ndr_err_code ndr_err;
int i, ret, trust_direction_flags;
+ uint32_t kvno;
private = talloc(mem_ctx, struct hdb_ldb_private);
if (!private) {
@@ -765,6 +766,12 @@ static krb5_error_code LDB_trust_message2entry(krb5_context context, HDB *db,
}
for (i=0; i < password_blob.count; i++) {
+ if (password_blob.current->array[i].AuthType == TRUST_AUTH_TYPE_VERSION) {
+ entry_ex->entry.kvno = password_blob.current->array[i].AuthInfo.version.version;
+ }
+ }
+
+ for (i=0; i < password_blob.count; i++) {
if (password_blob.current->array[i].AuthType == TRUST_AUTH_TYPE_CLEAR) {
password_utf16 = data_blob_const(password_blob.current->array[i].AuthInfo.clear.password,
password_blob.current->array[i].AuthInfo.clear.size);