dnspython: Update to latest upstream.
[kai/samba-autobuild/.git] / source4 / kdc / kdc.h
index 7e82ad24c4960054fef76bb0e1f345cde8b9d2ce..0551063aa718c6bf837bb87c60e552562f0bfad1 100644 (file)
@@ -1,45 +1,33 @@
-/* 
+/*
    Unix SMB/CIFS implementation.
 
    KDC structures
 
    Copyright (C) Andrew Tridgell       2005
    Copyright (C) Andrew Bartlett <abartlet@samba.org> 2005
-   
+
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.
-   
+
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
-   
+
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
 
 #include "system/kerberos.h"
 #include "auth/kerberos/kerberos.h"
-#include <kdc.h>
 #include <hdb.h>
+#include <kdc.h>
 #include <krb5/windc_plugin.h>
-#include "kdc/pac_glue.h"
+#include "kdc/samba_kdc.h"
 
-struct kdc_server;
-struct socket_address;
-
-extern TALLOC_CTX *kdc_mem_ctx;
-extern struct loadparm_context *kdc_lp_ctx;
-
-bool kpasswdd_process(struct kdc_server *kdc,
-                     TALLOC_CTX *mem_ctx, 
-                     DATA_BLOB *input, 
-                     DATA_BLOB *reply,
-                     struct socket_address *peer_addr, 
-                     struct socket_address *my_addr,
-                     int datagram_reply);
+struct tsocket_address;
 
 /*
   top level context structure for the kdc server
@@ -48,14 +36,17 @@ struct kdc_server {
        struct task_server *task;
        krb5_kdc_configuration *config;
        struct smb_krb5_context *smb_krb5_context;
+       struct samba_kdc_base_context *base_ctx;
 };
 
+bool kpasswdd_process(struct kdc_server *kdc,
+                     TALLOC_CTX *mem_ctx,
+                     DATA_BLOB *input,
+                     DATA_BLOB *reply,
+                     struct tsocket_address *peer_addr,
+                     struct tsocket_address *my_addr,
+                     int datagram_reply);
 
-struct hdb_ldb_private {
-       struct ldb_context *samdb;
-       struct smb_iconv_convenience *iconv_convenience;
-       struct ldb_message *msg;
-       struct ldb_message *realm_ref_msg;
-       hdb_entry_ex *entry_ex;
-       const char *netbios_name;
-};
+/* from hdb-samba4.c */
+NTSTATUS hdb_samba4_create_kdc(struct samba_kdc_base_context *base_ctx,
+                              krb5_context context, struct HDB **db);