When kdb5_util adds or removes master keys, it modifies tl-data but
doesn't set the KADM5_TL_DATA mask flag, causing KDB modules that rely
on this signaling (such as the LDAP module) not to store the tl-data
changes. Fix this issue by setting the mask bit in add_new_mkey() and
kdb5_purge_mkeys().
[ghudson@mit.edu: edit commit message]
(cherry picked from commit
c877f13c8985d820583b0d7ac1bb4c5dc36e677e)
ticket: 8327
version_fixed: 1.13.4
tags: -pullup
status: resolved
mkey_aux_data_head))) {
goto clean_n_exit;
}
- master_entry->mask |= KADM5_KEY_DATA;
+ master_entry->mask |= KADM5_KEY_DATA | KADM5_TL_DATA;
clean_n_exit:
krb5_dbe_free_mkey_aux_list(context, mkey_aux_data_head);
goto cleanup_return;
}
- master_entry->mask |= KADM5_KEY_DATA;
+ master_entry->mask |= KADM5_KEY_DATA | KADM5_TL_DATA;
if ((retval = krb5_db_put_principal(util_context, master_entry))) {
(void) krb5_db_fini(util_context);