Hi! Is any of the maintainers of the package looking into fixing this?
The cause of the problem is that a function declared in a header file in
the heimdal package has changed its signature.
The old header said:
krb5_error_code
hdb_generate_key_set_password (
krb5_context /*context*/,
krb5_principal /*principal*/,
const char */*password*/,
Key **/*keys*/,
size_t */*num_keys*/);
The new version says:
krb5_error_code
hdb_generate_key_set_password (
krb5_context /*context*/,
krb5_principal /*principal*/,
const char */*password*/,
krb5_key_salt_tuple */*ks_tuple*/,
int /*n_ks_tuple*/,
Key **/*keys*/,
size_t */*num_keys*/);
So there are two new arguments added in the middle at positions 4 and
5. The openldap code calls this function in one location in the file
contrib/slapd-modules/smbk5pwd/smbk5pwd.c on line 470-471:
ret = hdb_generate_key_set_password(context, ent.principal,
qpw->rs_new.bv_val, &ent.keys.val, &nkeys);
Without any knowledge about what this function does and what the
smbk5pwd module is, the best I can do is to add a NULL and a 0 for the
two new arguments:
ret = hdb_generate_key_set_password(context, ent.principal,
qpw->rs_new.bv_val, NULL, 0, &ent.keys.val, &nkeys);
Adding a patch implementing this change makes the package compile. But
since I have no idea what the module does, I also can not test if works
with this patch. A package that builds at all is better than a package
that is FTBFS though.
Does anyone have a better idea?
Mattias
--- openldap-2.4.28.orig/contrib/slapd-modules/smbk5pwd/smbk5pwd.c 2011-11-25 19:52:29.000000000 +0100 +++ openldap-2.4.28/contrib/slapd-modules/smbk5pwd/smbk5pwd.c 2012-03-30 10:03:14.035984880 +0200 @@ -468,7 +468,7 @@ } ret = hdb_generate_key_set_password(context, ent.principal, - qpw->rs_new.bv_val, &ent.keys.val, &nkeys); + qpw->rs_new.bv_val, NULL, 0, &ent.keys.val, &nkeys); ent.keys.len = nkeys; hdb_seal_keys(context, db, &ent); krb5_free_principal( context, ent.principal );
signature.asc
Description: This is a digitally signed message part

