mirror of
https://github.com/samba-team/samba.git
synced 2025-02-04 17:47:26 +03:00
This merges Samba4 with lorikeet-heimdal, which itself has been tracking Heimdal CVS for the past couple of weeks. This is such a big change because Heimdal reorganised it's internal structures, with the mechglue merge, and because many of our 'wishes' have been granted: we now have DCE_STYLE GSSAPI, send_to_kdc hooks and many other features merged into the mainline code. We have adapted to upstream's choice of API in these cases. In gensec_gssapi and gensec_krb5, we either expect a valid PAC, or NO PAC. This matches windows behavour. We also have an option to require the PAC to be present (which allows us to automate the testing of this code). This also includes a restructure of how the kerberos dependencies are handled, due to the fallout of the merge. Andrew Bartlett
53 lines
1.6 KiB
C
53 lines
1.6 KiB
C
/*
|
|
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 2 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, write to the Free Software
|
|
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
*/
|
|
|
|
#include "system/kerberos.h"
|
|
#include "auth/kerberos/kerberos.h"
|
|
#include "heimdal/kdc/kdc.h"
|
|
#include "heimdal/lib/hdb/hdb.h"
|
|
#include "kdc/pac-glue.h"
|
|
|
|
struct kdc_server;
|
|
struct socket_address;
|
|
|
|
NTSTATUS kdc_hdb_ldb_create(TALLOC_CTX *mem_ctx,
|
|
krb5_context context, struct HDB **db, const char *arg);
|
|
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);
|
|
|
|
/*
|
|
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;
|
|
};
|
|
|
|
|