[PATCH] Support for Heimdal's unified krb5 and hdb plugin system.

Jeffrey Clark dude at zaplabs.com
Thu Jan 9 21:06:12 MST 2014


Fixes exportkeytab and a kdc crash when building against heimdal master.

Bug-Debian: http://bugs.debian.org/732342
---
 source4/kdc/hdb-samba4-plugin.c | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/source4/kdc/hdb-samba4-plugin.c b/source4/kdc/hdb-samba4-plugin.c
index 9135df8..fe3494f 100644
--- a/source4/kdc/hdb-samba4-plugin.c
+++ b/source4/kdc/hdb-samba4-plugin.c
@@ -26,7 +26,7 @@
 #include "lib/param/param.h"
 #include "source4/lib/events/events.h"
 
-static krb5_error_code hdb_samba4_create(krb5_context context, struct HDB **db, const char *arg)
+static krb5_error_code KRB5_LIB_CALL hdb_samba4_create(krb5_context context, struct HDB **db, const char *arg)
 {
 	NTSTATUS nt_status;
 	void *ptr;
@@ -70,6 +70,18 @@ static krb5_error_code hdb_samba4_create(krb5_context context, struct HDB **db,
 	return EINVAL;
 }
 
+#if HDB_INTERFACE_VERSION >= 8
+static krb5_error_code KRB5_LIB_CALL * hdb_samba4_init(krb5_context context, void **ctx)
+{
+	*ctx = NULL;
+	return 0;
+}
+
+static void KRB5_LIB_CALL * hdb_samba4_fini(void *ctx)
+{
+}
+#endif
+
 /* Only used in the hdb-backed keytab code
  * for a keytab of 'samba4&<address>' or samba4, to find
  * kpasswd's key in the main DB, and to
@@ -79,6 +91,10 @@ static krb5_error_code hdb_samba4_create(krb5_context context, struct HDB **db,
  */
 struct hdb_method hdb_samba4_interface = {
 	HDB_INTERFACE_VERSION,
+#if HDB_INTERFACE_VERSION >= 8
+	.init = hdb_samba4_init,
+	.fini = hdb_samba4_fini,
+#endif
 	.prefix = "samba4",
 	.create = hdb_samba4_create
 };
-- 
1.8.5.2



More information about the samba-technical mailing list