#ifndef __kdc_private_h__
#define __kdc_private_h__
#include <stdarg.h>
krb5_error_code
_kdc_add_KRB5SignedPath (
krb5_context ,
krb5_kdc_configuration *,
hdb_entry_ex *,
krb5_enctype ,
krb5_principal ,
krb5_const_principal ,
krb5_principals ,
EncTicketPart *);
krb5_error_code
_kdc_add_inital_verified_cas (
krb5_context ,
krb5_kdc_configuration *,
pk_client_params *,
EncTicketPart *);
krb5_error_code
_kdc_as_rep (
krb5_context ,
krb5_kdc_configuration *,
KDC_REQ *,
const krb5_data *,
krb5_data *,
const char *,
struct sockaddr *,
size_t );
krb5_error_code
_kdc_check_access (
krb5_context ,
krb5_kdc_configuration *,
hdb_entry_ex *,
const char *,
hdb_entry_ex *,
const char *,
KDC_REQ *,
krb5_data *);
krb5_boolean
_kdc_check_addresses (
krb5_context ,
krb5_kdc_configuration *,
HostAddresses *,
const struct sockaddr *);
krb5_error_code
_kdc_db_fetch (
krb5_context ,
krb5_kdc_configuration *,
krb5_const_principal ,
unsigned ,
HDB **,
hdb_entry_ex **);
krb5_error_code
_kdc_db_fetch4 (
krb5_context ,
krb5_kdc_configuration *,
const char *,
const char *,
const char *,
unsigned ,
hdb_entry_ex **);
krb5_error_code
_kdc_do_524 (
krb5_context ,
krb5_kdc_configuration *,
const Ticket *,
krb5_data *,
const char *,
struct sockaddr *);
krb5_error_code
_kdc_do_digest (
krb5_context ,
krb5_kdc_configuration *,
const struct DigestREQ *,
krb5_data *,
const char *,
struct sockaddr *);
krb5_error_code
_kdc_do_kaserver (
krb5_context ,
krb5_kdc_configuration *,
unsigned char *,
size_t ,
krb5_data *,
const char *,
struct sockaddr_in *);
krb5_error_code
_kdc_do_kx509 (
krb5_context ,
krb5_kdc_configuration *,
const struct Kx509Request *,
krb5_data *,
const char *,
struct sockaddr *);
krb5_error_code
_kdc_do_version4 (
krb5_context ,
krb5_kdc_configuration *,
unsigned char *,
size_t ,
krb5_data *,
const char *,
struct sockaddr_in *);
krb5_error_code
_kdc_encode_reply (
krb5_context ,
krb5_kdc_configuration *,
KDC_REP *,
const EncTicketPart *,
EncKDCRepPart *,
krb5_enctype ,
int ,
const EncryptionKey *,
int ,
const EncryptionKey *,
int ,
const char **,
krb5_data *);
krb5_error_code
_kdc_encode_v4_ticket (
krb5_context ,
krb5_kdc_configuration *,
void *,
size_t ,
const EncTicketPart *,
const PrincipalName *,
size_t *);
krb5_error_code
_kdc_find_etype (
krb5_context ,
const hdb_entry_ex *,
krb5_enctype *,
unsigned ,
Key **);
const PA_DATA*
_kdc_find_padata (
const KDC_REQ *,
int *,
int );
void
_kdc_fix_time (time_t **);
void
_kdc_free_ent (
krb5_context ,
hdb_entry_ex *);
krb5_error_code
_kdc_get_des_key (
krb5_context ,
hdb_entry_ex *,
krb5_boolean ,
krb5_boolean ,
Key **);
krb5_error_code
_kdc_get_preferred_key (
krb5_context ,
krb5_kdc_configuration *,
hdb_entry_ex *,
const char *,
krb5_enctype *,
Key **);
krb5_boolean
_kdc_is_anonymous (
krb5_context ,
krb5_principal );
krb5_boolean
_kdc_is_weak_exception (
krb5_principal ,
krb5_enctype );
void
_kdc_log_timestamp (
krb5_context ,
krb5_kdc_configuration *,
const char *,
KerberosTime ,
KerberosTime *,
KerberosTime ,
KerberosTime *);
int
_kdc_maybe_version4 (
unsigned char *,
int );
krb5_error_code
_kdc_pac_generate (
krb5_context ,
hdb_entry_ex *,
krb5_pac *);
krb5_error_code
_kdc_pac_verify (
krb5_context ,
const krb5_principal ,
hdb_entry_ex *,
hdb_entry_ex *,
krb5_pac *,
int *);
krb5_error_code
_kdc_pk_check_client (
krb5_context ,
krb5_kdc_configuration *,
HDB *,
hdb_entry_ex *,
InitiatorName *,
pk_client_params *,
char **);
void
_kdc_pk_free_client_param (
krb5_context ,
pk_client_params *);
krb5_error_code
_kdc_pk_mk_pa_reply (
krb5_context ,
krb5_kdc_configuration *,
pk_client_params *,
const hdb_entry_ex *,
krb5_enctype ,
const KDC_REQ *,
const krb5_data *,
krb5_keyblock **,
krb5_keyblock *,
METHOD_DATA *);
krb5_error_code
_kdc_pk_rd_padata (
krb5_context ,
krb5_kdc_configuration *,
const KDC_REQ *,
const PA_DATA *,
hdb_entry_ex *,
pk_client_params **);
krb5_error_code
_kdc_tgs_rep (
krb5_context ,
krb5_kdc_configuration *,
KDC_REQ *,
krb5_data *,
const char *,
struct sockaddr *,
size_t );
krb5_error_code
_kdc_tkt_add_if_relevant_ad (
krb5_context ,
EncTicketPart *,
int ,
const krb5_data *);
krb5_error_code
_kdc_try_kx509_request (
void *,
size_t ,
struct Kx509Request *,
size_t *);
#endif