2005-06-03 15:23:15 +04:00
/*
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
2007-07-10 06:07:03 +04:00
the Free Software Foundation ; either version 3 of the License , or
2005-06-03 15:23:15 +04:00
( 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
2007-07-10 06:07:03 +04:00
along with this program . If not , see < http : //www.gnu.org/licenses/>.
2005-06-03 15:23:15 +04:00
*/
# include "system/kerberos.h"
2005-06-03 18:32:10 +04:00
# include "auth/kerberos/kerberos.h"
2005-06-07 11:22:25 +04:00
# include "heimdal/kdc/kdc.h"
2005-09-28 06:22:31 +04:00
# include "heimdal/lib/hdb/hdb.h"
2007-01-10 04:51:35 +03:00
# include "kdc/pac_glue.h"
2005-06-03 15:23:15 +04:00
2006-01-03 20:27:33 +03:00
struct kdc_server ;
2006-03-18 18:42:57 +03:00
struct socket_address ;
2006-01-03 20:27:33 +03:00
2007-01-10 04:51:35 +03:00
extern TALLOC_CTX * kdc_mem_ctx ;
2008-02-21 19:17:37 +03:00
extern struct loadparm_context * kdc_lp_ctx ;
2007-01-10 04:51:35 +03:00
2007-08-27 22:10:19 +04:00
bool kpasswdd_process ( struct kdc_server * kdc ,
2005-12-11 11:31:46 +03:00
TALLOC_CTX * mem_ctx ,
DATA_BLOB * input ,
DATA_BLOB * reply ,
2006-01-10 01:12:53 +03:00
struct socket_address * peer_addr ,
2006-11-07 09:59:56 +03:00
struct socket_address * my_addr ,
int datagram_reply ) ;
2005-10-21 05:25:55 +04:00
/*
top level context structure for the kdc server
*/
struct kdc_server {
struct task_server * task ;
krb5_kdc_configuration * config ;
struct smb_krb5_context * smb_krb5_context ;
} ;
2007-01-10 04:51:35 +03:00
struct hdb_ldb_private {
struct ldb_context * samdb ;
2008-02-21 17:21:45 +03:00
struct smb_iconv_convenience * iconv_convenience ;
2007-01-10 04:51:35 +03:00
struct ldb_message * msg ;
struct ldb_message * realm_ref_msg ;
hdb_entry_ex * entry_ex ;
2008-02-21 17:45:32 +03:00
const char * netbios_name ;
2007-01-10 04:51:35 +03:00
} ;