svn rev #25258: trunk/src/ include/ windows/ windows/kfwlogon/ windows/leashdll/include/

hartmans@MIT.EDU hartmans at MIT.EDU
Wed Sep 28 16:55:23 EDT 2011


http://src.mit.edu/fisheye/changelog/krb5/?cs=25258
Commit By: hartmans
Log Message:
Enabled unconditional build of kfwlogon on Windows

Removed dependency on KFW, as it is now a part of the same build.

Signed-off-by: Alexey Melnikov <aamelnikov at gmail.com>


Changed Files:
A   trunk/src/include/loadfuncs-com_err.h
A   trunk/src/include/loadfuncs-krb5.h
A   trunk/src/include/loadfuncs-leash.h
A   trunk/src/include/loadfuncs-lsa.h
A   trunk/src/include/loadfuncs-profile.h
U   trunk/src/windows/Makefile.in
U   trunk/src/windows/kfwlogon/Makefile.in
D   trunk/src/windows/leashdll/include/loadfuncs-com_err.h
D   trunk/src/windows/leashdll/include/loadfuncs-krb5.h
D   trunk/src/windows/leashdll/include/loadfuncs-lsa.h
D   trunk/src/windows/leashdll/include/loadfuncs-profile.h
Copied: trunk/src/include/loadfuncs-com_err.h (from rev 25257, trunk/src/windows/leashdll/include/loadfuncs-com_err.h)
===================================================================
--- trunk/src/include/loadfuncs-com_err.h	                        (rev 0)
+++ trunk/src/include/loadfuncs-com_err.h	2011-09-28 20:55:23 UTC (rev 25258)
@@ -0,0 +1,44 @@
+#ifndef __LOADFUNCS_COM_ERR_H__
+#define __LOADFUNCS_COM_ERR_H__
+
+#include "loadfuncs.h"
+#include <com_err.h>
+
+#if defined(_WIN64)
+#define COMERR_DLL      "comerr64.dll"
+#else
+#define COMERR_DLL      "comerr32.dll"
+#endif
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV_C,
+    com_err,
+    (const char FAR *, errcode_t, const char FAR *, ...)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    com_err_va,
+    (const char FAR *whoami, errcode_t code, const char FAR *fmt, va_list ap)
+    );
+TYPEDEF_FUNC(
+    const char FAR *,
+    KRB5_CALLCONV,
+    error_message,
+    (errcode_t)
+    );
+TYPEDEF_FUNC(
+    errcode_t,
+    KRB5_CALLCONV,
+    add_error_table,
+    (const struct error_table FAR *)
+    );
+TYPEDEF_FUNC(
+    errcode_t,
+    KRB5_CALLCONV,
+    remove_error_table,
+    (const struct error_table FAR *)
+    );
+
+#endif /* __LOADFUNCS_COM_ERR_H__ */

Copied: trunk/src/include/loadfuncs-krb5.h (from rev 25257, trunk/src/windows/leashdll/include/loadfuncs-krb5.h)
===================================================================
--- trunk/src/include/loadfuncs-krb5.h	                        (rev 0)
+++ trunk/src/include/loadfuncs-krb5.h	2011-09-28 20:55:23 UTC (rev 25258)
@@ -0,0 +1,1778 @@
+#ifndef __LOADFUNCS_KRB5_H__
+#define __LOADFUNCS_KRB5_H__
+
+#include "loadfuncs.h"
+#include <krb5.h>
+
+#if defined(_WIN64)
+#define KRB5_DLL      "krb5_64.dll"
+#else
+#define KRB5_DLL      "krb5_32.dll"
+#endif
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_principal,
+    (krb5_context, krb5_principal)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_authenticator,
+    (krb5_context, krb5_authenticator * )
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_authenticator_contents,
+    (krb5_context, krb5_authenticator * )
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_addresses,
+    (krb5_context, krb5_address * * )
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_address,
+    (krb5_context, krb5_address * )
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_authdata,
+    (krb5_context, krb5_authdata * * )
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_enc_tkt_part,
+    (krb5_context, krb5_enc_tkt_part * )
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_ticket,
+    (krb5_context, krb5_ticket * )
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_tickets,
+    (krb5_context, krb5_ticket * * )
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_kdc_req,
+    (krb5_context, krb5_kdc_req * )
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_kdc_rep,
+    (krb5_context, krb5_kdc_rep * )
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_last_req,
+    (krb5_context, krb5_last_req_entry * * )
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_enc_kdc_rep_part,
+    (krb5_context, krb5_enc_kdc_rep_part * )
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_error,
+    (krb5_context, krb5_error * )
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_ap_req,
+    (krb5_context, krb5_ap_req * )
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_ap_rep,
+    (krb5_context, krb5_ap_rep * )
+    );
+
+/* Removed around the time of krb5_rc_* change... */
+#if 0
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_safe,
+    (krb5_context, krb5_safe * )
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_priv,
+    (krb5_context, krb5_priv * )
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_priv_enc_part,
+    (krb5_context, krb5_priv_enc_part * )
+    );
+#endif
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_cred,
+    (krb5_context, krb5_cred *)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_creds,
+    (krb5_context, krb5_creds *)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_cred_contents,
+    (krb5_context, krb5_creds *)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_cred_enc_part,
+    (krb5_context, krb5_cred_enc_part *)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_checksum,
+    (krb5_context, krb5_checksum *)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_checksum_contents,
+    (krb5_context, krb5_checksum *)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_keyblock,
+    (krb5_context, krb5_keyblock *)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_keyblock_contents,
+    (krb5_context, krb5_keyblock *)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_pa_data,
+    (krb5_context, krb5_pa_data * *)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_ap_rep_enc_part,
+    (krb5_context, krb5_ap_rep_enc_part *)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_tkt_authent,
+    (krb5_context, krb5_tkt_authent *)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_pwd_data,
+    (krb5_context, krb5_pwd_data *)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_pwd_sequences,
+    (krb5_context, passwd_phrase_element * *)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_data,
+    (krb5_context, krb5_data *)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_data_contents,
+    (krb5_context, krb5_data *)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_unparsed_name,
+    (krb5_context, char *)
+    );
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_cksumtypes,
+    (krb5_context, krb5_cksumtype *)
+    );
+
+/* ------------------------------------------------------------------------- */
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_c_encrypt,
+    (krb5_context context, const krb5_keyblock *key,
+     krb5_keyusage usage, const krb5_data *ivec,
+     const krb5_data *input, krb5_enc_data *output)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_c_decrypt,
+    (krb5_context context, const krb5_keyblock *key,
+     krb5_keyusage usage, const krb5_data *ivec,
+     const krb5_enc_data *input, krb5_data *output)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_c_encrypt_length,
+    (krb5_context context, krb5_enctype enctype,
+     size_t inputlen, size_t *length)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_c_block_size,
+    (krb5_context context, krb5_enctype enctype,
+     size_t *blocksize)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_c_make_random_key,
+    (krb5_context context, krb5_enctype enctype,
+     krb5_keyblock *random_key)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_c_random_make_octets,
+    (krb5_context context, krb5_data *data)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_c_random_seed,
+    (krb5_context context, krb5_data *data)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_c_string_to_key,
+    (krb5_context context, krb5_enctype enctype,
+     const krb5_data *string, const krb5_data *salt,
+     krb5_keyblock *key)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_c_enctype_compare,
+    (krb5_context context, krb5_enctype e1, krb5_enctype e2,
+     krb5_boolean *similar)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_c_make_checksum,
+    (krb5_context context, krb5_cksumtype cksumtype,
+     const krb5_keyblock *key, krb5_keyusage usage,
+     const krb5_data *input, krb5_checksum *cksum)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_c_verify_checksum,
+    (krb5_context context,
+     const krb5_keyblock *key, krb5_keyusage usage,
+     const krb5_data *data,
+     const krb5_checksum *cksum,
+     krb5_boolean *valid)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_c_checksum_length,
+    (krb5_context context, krb5_cksumtype cksumtype,
+     size_t *length)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_c_keyed_checksum_types,
+    (krb5_context context, krb5_enctype enctype,
+     unsigned int *count, krb5_cksumtype **cksumtypes)
+    );
+
+/* ------------------------------------------------------------------------- */
+
+TYPEDEF_FUNC(
+    krb5_boolean,
+    KRB5_CALLCONV,
+    valid_enctype,
+    (const krb5_enctype ktype)
+    );
+
+TYPEDEF_FUNC(
+    krb5_boolean,
+    KRB5_CALLCONV,
+    valid_cksumtype,
+    (const krb5_cksumtype ctype)
+    );
+
+TYPEDEF_FUNC(
+    krb5_boolean,
+    KRB5_CALLCONV,
+    is_coll_proof_cksum,
+    (const krb5_cksumtype ctype)
+    );
+
+TYPEDEF_FUNC(
+    krb5_boolean,
+    KRB5_CALLCONV,
+    is_keyed_cksum,
+    (const krb5_cksumtype ctype)
+    );
+
+/* ------------------------------------------------------------------------- */
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_init_context,
+    (krb5_context *)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_context,
+    (krb5_context)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_decrypt_tkt_part,
+    (krb5_context,
+     const krb5_keyblock *,
+     krb5_ticket * )
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_tgt_creds,
+    (krb5_context,
+     krb5_creds ** )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_get_credentials,
+    (krb5_context,
+     const krb5_flags,
+     krb5_ccache,
+     krb5_creds *,
+     krb5_creds * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_get_credentials_validate,
+    (krb5_context,
+     const krb5_flags,
+     krb5_ccache,
+     krb5_creds *,
+     krb5_creds * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_get_credentials_renew,
+    (krb5_context,
+     const krb5_flags,
+     krb5_ccache,
+     krb5_creds *,
+     krb5_creds * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_mk_req,
+    (krb5_context,
+     krb5_auth_context *,
+     const krb5_flags,
+     char *,
+     char *,
+     krb5_data *,
+     krb5_ccache,
+     krb5_data * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_mk_req_extended,
+    (krb5_context,
+     krb5_auth_context *,
+     const krb5_flags,
+     krb5_data *,
+     krb5_creds *,
+     krb5_data * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_mk_rep,
+    (krb5_context,
+     krb5_auth_context,
+     krb5_data *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_rd_rep,
+    (krb5_context,
+     krb5_auth_context,
+     const krb5_data *,
+     krb5_ap_rep_enc_part * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_mk_error,
+    (krb5_context,
+     const krb5_error *,
+     krb5_data * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_rd_error,
+    (krb5_context,
+     const krb5_data *,
+     krb5_error * * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_rd_safe,
+    (krb5_context,
+     krb5_auth_context,
+     const krb5_data *,
+     krb5_data *,
+     krb5_replay_data *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_rd_priv,
+    (krb5_context,
+     krb5_auth_context,
+     const krb5_data *,
+     krb5_data *,
+     krb5_replay_data *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_parse_name,
+    (krb5_context,
+     const char *,
+     krb5_principal * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_unparse_name,
+    (krb5_context,
+     krb5_const_principal,
+     char * * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_unparse_name_ext,
+    (krb5_context,
+     krb5_const_principal,
+     char * *,
+     int *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_set_principal_realm,
+    (krb5_context, krb5_principal, const char *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_boolean,
+    KRB5_CALLCONV,
+    krb5_principal_compare,
+    (krb5_context,
+     krb5_const_principal,
+     krb5_const_principal)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_copy_keyblock,
+    (krb5_context,
+     const krb5_keyblock *,
+     krb5_keyblock * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_copy_keyblock_contents,
+    (krb5_context,
+     const krb5_keyblock *,
+     krb5_keyblock *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_copy_creds,
+    (krb5_context,
+     const krb5_creds *,
+     krb5_creds * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_copy_data,
+    (krb5_context,
+     const krb5_data *,
+     krb5_data * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_copy_principal,
+    (krb5_context,
+     krb5_const_principal,
+     krb5_principal *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_copy_addr,
+    (krb5_context,
+     const krb5_address *,
+     krb5_address * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_copy_addresses,
+    (krb5_context,
+     krb5_address * const *,
+     krb5_address * * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_copy_ticket,
+    (krb5_context,
+     const krb5_ticket *,
+     krb5_ticket * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_copy_authdata,
+    (krb5_context,
+     krb5_authdata * const *,
+     krb5_authdata * * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_copy_authenticator,
+    (krb5_context,
+     const krb5_authenticator *,
+     krb5_authenticator * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_copy_checksum,
+    (krb5_context,
+     const krb5_checksum *,
+     krb5_checksum * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_get_server_rcache,
+    (krb5_context,
+     const krb5_data *, krb5_rcache *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV_C,
+    krb5_build_principal_ext,
+    (krb5_context, krb5_principal *, int, const char *, ...)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV_C,
+    krb5_build_principal,
+    (krb5_context, krb5_principal *, int, const char *, ...)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_425_conv_principal,
+    (krb5_context,
+     const char *name,
+     const char *instance, const char *realm,
+     krb5_principal *princ)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_524_conv_principal,
+    (krb5_context context, const krb5_principal princ,
+     char *name, char *inst, char *realm)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_mk_chpw_req,
+    (krb5_context context, krb5_auth_context auth_context,
+     krb5_data *ap_req, char *passwd, krb5_data *packet)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_rd_chpw_rep,
+    (krb5_context context, krb5_auth_context auth_context,
+     krb5_data *packet, int *result_code,
+     krb5_data *result_data)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_chpw_result_code_string,
+    (krb5_context context, int result_code,
+     char **result_codestr)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_kt_register,
+    (krb5_context,
+     struct _krb5_kt_ops * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_kt_resolve,
+    (krb5_context,
+     const char *,
+     krb5_keytab * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_kt_default_name,
+    (krb5_context,
+     char *,
+     int )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_kt_default,
+    (krb5_context,
+     krb5_keytab * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_kt_free_entry,
+    (krb5_context,
+     krb5_keytab_entry * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_kt_remove_entry,
+    (krb5_context,
+     krb5_keytab,
+     krb5_keytab_entry * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_kt_add_entry,
+    (krb5_context,
+     krb5_keytab,
+     krb5_keytab_entry * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cc_resolve,
+    (krb5_context,
+     const char *,
+     krb5_ccache * )
+    );
+
+TYPEDEF_FUNC(
+    const char*,
+    KRB5_CALLCONV,
+    krb5_cc_default_name,
+    (krb5_context)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cc_set_default_name,
+    (krb5_context, const char *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cc_default,
+    (krb5_context,
+     krb5_ccache *)
+    );
+
+TYPEDEF_FUNC(
+    unsigned int,
+    KRB5_CALLCONV,
+    krb5_get_notification_message,
+    (void)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cc_copy_creds,
+    (krb5_context context,
+     krb5_ccache incc,
+     krb5_ccache outcc)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_us_timeofday,
+    (krb5_context,
+     krb5_int32 *,
+     krb5_int32 * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_timeofday,
+    (krb5_context,
+     krb5_int32 * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_os_localaddr,
+    (krb5_context,
+     krb5_address * * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_get_default_realm,
+    (krb5_context,
+     char * * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_set_default_realm,
+    (krb5_context,
+     const char * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_free_default_realm,
+    (krb5_context,
+     const char * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_sname_to_principal,
+    (krb5_context,
+     const char *,
+     const char *,
+     krb5_int32,
+     krb5_principal *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_change_password,
+    (krb5_context context, krb5_creds *creds, char *newpw,
+     int *result_code, krb5_data *result_code_string,
+     krb5_data *result_string)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_get_default_config_files,
+    (char ***filenames)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_config_files,
+    (char **filenames)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_get_in_tkt,
+    (krb5_context,
+     const krb5_flags,
+     krb5_address * const *,
+     krb5_enctype *,
+     krb5_preauthtype *,
+     krb5_error_code ( * )(krb5_context,
+                           const krb5_enctype,
+                           krb5_data *,
+                           krb5_const_pointer,
+                           krb5_keyblock * *),
+     krb5_const_pointer,
+     krb5_error_code ( * )(krb5_context,
+                           const krb5_keyblock *,
+                           krb5_const_pointer,
+                           krb5_kdc_rep * ),
+     krb5_const_pointer,
+     krb5_creds *,
+     krb5_ccache,
+     krb5_kdc_rep * * )
+    );
+
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_get_in_tkt_with_password,
+    (krb5_context,
+     const krb5_flags,
+     krb5_address * const *,
+     krb5_enctype *,
+     krb5_preauthtype *,
+     const char *,
+     krb5_ccache,
+     krb5_creds *,
+     krb5_kdc_rep * * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_get_in_tkt_with_skey,
+    (krb5_context,
+     const krb5_flags,
+     krb5_address * const *,
+     krb5_enctype *,
+     krb5_preauthtype *,
+     const krb5_keyblock *,
+     krb5_ccache,
+     krb5_creds *,
+     krb5_kdc_rep * * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_get_in_tkt_with_keytab,
+    (krb5_context,
+     const krb5_flags,
+     krb5_address * const *,
+     krb5_enctype *,
+     krb5_preauthtype *,
+     const krb5_keytab,
+     krb5_ccache,
+     krb5_creds *,
+     krb5_kdc_rep * * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_rd_req,
+    (krb5_context,
+     krb5_auth_context *,
+     const krb5_data *,
+     krb5_const_principal,
+     krb5_keytab,
+     krb5_flags *,
+     krb5_ticket * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_kt_read_service_key,
+    (krb5_context,
+     krb5_pointer,
+     krb5_principal,
+     krb5_kvno,
+     krb5_enctype,
+     krb5_keyblock * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_mk_safe,
+    (krb5_context,
+     krb5_auth_context,
+     const krb5_data *,
+     krb5_data *,
+     krb5_replay_data *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_mk_priv,
+    (krb5_context,
+     krb5_auth_context,
+     const krb5_data *,
+     krb5_data *,
+     krb5_replay_data *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cc_register,
+    (krb5_context,
+     krb5_cc_ops *,
+     krb5_boolean )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_sendauth,
+    (krb5_context,
+     krb5_auth_context *,
+     krb5_pointer,
+     char *,
+     krb5_principal,
+     krb5_principal,
+     krb5_flags,
+     krb5_data *,
+     krb5_creds *,
+     krb5_ccache,
+     krb5_error * *,
+     krb5_ap_rep_enc_part * *,
+     krb5_creds * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_recvauth,
+    (krb5_context,
+     krb5_auth_context *,
+     krb5_pointer,
+     char *,
+     krb5_principal,
+     krb5_int32,
+     krb5_keytab,
+     krb5_ticket * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_mk_ncred,
+    (krb5_context,
+     krb5_auth_context,
+     krb5_creds * *,
+     krb5_data * *,
+     krb5_replay_data *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_mk_1cred,
+    (krb5_context,
+     krb5_auth_context,
+     krb5_creds *,
+     krb5_data * *,
+     krb5_replay_data *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_rd_cred,
+    (krb5_context,
+     krb5_auth_context,
+     krb5_data *,
+     krb5_creds * * *,
+     krb5_replay_data *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_fwd_tgt_creds,
+    (krb5_context,
+     krb5_auth_context,
+     char *,
+     krb5_principal,
+     krb5_principal,
+     krb5_ccache,
+     int forwardable,
+     krb5_data *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_auth_con_init,
+    (krb5_context,
+     krb5_auth_context *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_auth_con_free,
+    (krb5_context,
+     krb5_auth_context)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_auth_con_setflags,
+    (krb5_context,
+     krb5_auth_context,
+     krb5_int32)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_auth_con_getflags,
+    (krb5_context,
+     krb5_auth_context,
+     krb5_int32 *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_auth_con_setuseruserkey,
+    (krb5_context,
+     krb5_auth_context,
+     krb5_keyblock *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_auth_con_getkey,
+    (krb5_context,
+     krb5_auth_context,
+     krb5_keyblock **)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_auth_con_getlocalsubkey,
+    (krb5_context,
+     krb5_auth_context,
+     krb5_keyblock * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_auth_con_set_req_cksumtype,
+    (krb5_context,
+     krb5_auth_context,
+     krb5_cksumtype)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_auth_con_getlocalseqnumber,
+    (krb5_context,
+     krb5_auth_context,
+     krb5_int32 *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_auth_con_getremoteseqnumber,
+    (krb5_context,
+     krb5_auth_context,
+     krb5_int32 *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_auth_con_setrcache,
+    (krb5_context,
+     krb5_auth_context,
+     krb5_rcache)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_auth_con_getauthenticator,
+    (krb5_context,
+     krb5_auth_context,
+     krb5_authenticator * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_auth_con_getremotesubkey,
+    (krb5_context,
+     krb5_auth_context,
+     krb5_keyblock * *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_read_password,
+    (krb5_context,
+     const char *,
+     const char *,
+     char *,
+     int * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_get_host_realm,
+    (krb5_context,
+     const char *,
+     char * * * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_free_host_realm,
+    (krb5_context,
+     char * const * )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_get_realm_domain,
+    (krb5_context,
+     const char *,
+     char ** )
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_auth_con_genaddrs,
+    (krb5_context,
+     krb5_auth_context,
+     int, int)
+    );
+
+/* ------------------------------------------------------------------------- */
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_string_to_enctype,
+    (char *, krb5_enctype *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_string_to_salttype,
+    (char *, krb5_int32 *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_string_to_cksumtype,
+    (char *, krb5_cksumtype *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_string_to_timestamp,
+    (char *, krb5_timestamp *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_string_to_deltat,
+    (char *, krb5_deltat *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_enctype_to_string,
+    (krb5_enctype, char *, size_t)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_salttype_to_string,
+    (krb5_int32, char *, size_t)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cksumtype_to_string,
+    (krb5_cksumtype, char *, size_t)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_timestamp_to_string,
+    (krb5_timestamp, char *, size_t)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_timestamp_to_sfstring,
+    (krb5_timestamp, char *, size_t, char *)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_deltat_to_string,
+    (krb5_deltat, char *, size_t)
+    );
+
+/* ------------------------------------------------------------------------- */
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_prompter_posix,
+    (krb5_context context,
+     void *data,
+     const char *name,
+     const char *banner,
+     int num_prompts,
+     krb5_prompt prompts[])
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_get_init_creds_opt_init,
+    (krb5_get_init_creds_opt *opt)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_get_init_creds_opt_set_tkt_life,
+    (krb5_get_init_creds_opt *opt,
+     krb5_deltat tkt_life)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_get_init_creds_opt_set_renew_life,
+    (krb5_get_init_creds_opt *opt,
+     krb5_deltat renew_life)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_get_init_creds_opt_set_forwardable,
+    (krb5_get_init_creds_opt *opt,
+     int forwardable)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_get_init_creds_opt_set_proxiable,
+    (krb5_get_init_creds_opt *opt,
+     int proxiable)
+    );
+
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_get_init_creds_opt_set_etype_list,
+    (krb5_get_init_creds_opt *opt,
+     krb5_enctype *etype_list,
+     int etype_list_length)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_get_init_creds_opt_set_address_list,
+    (krb5_get_init_creds_opt *opt,
+     krb5_address **addresses)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_get_init_creds_opt_set_preauth_list,
+    (krb5_get_init_creds_opt *opt,
+     krb5_preauthtype *preauth_list,
+     int preauth_list_length)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_get_init_creds_opt_set_salt,
+    (krb5_get_init_creds_opt *opt,
+     krb5_data *salt)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_get_init_creds_opt_set_change_password_prompt,
+    (krb5_get_init_creds_opt *opt,
+     int prompt)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_get_init_creds_password,
+    (krb5_context context,
+     krb5_creds *creds,
+     krb5_principal client,
+     char *password,
+     krb5_prompter_fct prompter,
+     void *data,
+     krb5_deltat start_time,
+     char *in_tkt_service,
+     krb5_get_init_creds_opt *options)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_get_init_creds_keytab,
+    (krb5_context context,
+     krb5_creds *creds,
+     krb5_principal client,
+     krb5_keytab arg_keytab,
+     krb5_deltat start_time,
+     char *in_tkt_service,
+     krb5_get_init_creds_opt *options)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_verify_init_creds_opt_init,
+    (krb5_verify_init_creds_opt *options)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_verify_init_creds_opt_set_ap_req_nofail,
+    (krb5_verify_init_creds_opt *options,
+     int ap_req_nofail)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_verify_init_creds,
+    (krb5_context context,
+     krb5_creds *creds,
+     krb5_principal ap_req_server,
+     krb5_keytab ap_req_keytab,
+     krb5_ccache *ccache,
+     krb5_verify_init_creds_opt *options)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_get_validated_creds,
+    (krb5_context context,
+     krb5_creds *creds,
+     krb5_principal client,
+     krb5_ccache ccache,
+     char *in_tkt_service)
+    );
+
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_get_renewed_creds,
+    (krb5_context context,
+     krb5_creds *creds,
+     krb5_principal client,
+     krb5_ccache ccache,
+     char *in_tkt_service)
+    );
+
+/* ------------------------------------------------------------------------- */
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_realm_iterator_create,
+    (krb5_context context, void **iter_p)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_realm_iterator,
+    (krb5_context context, void **iter_p, char **ret_realm)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_realm_iterator_free,
+    (krb5_context context, void **iter_p)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_realm_string,
+    (krb5_context context, char *str)
+    );
+
+TYPEDEF_FUNC(
+    krb5_prompt_type*,
+    KRB5_CALLCONV,
+    krb5_get_prompt_types,
+    (krb5_context context)
+    );
+
+/* NOT IN krb5.h HEADER: */
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_decode_ticket,
+    (const krb5_data *code, krb5_ticket **rep)
+    );
+
+/* --- more --- */
+
+TYPEDEF_FUNC(
+    char *,
+    KRB5_CALLCONV,
+    krb5_cc_get_name,
+    (krb5_context context, krb5_ccache cache)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cc_gen_new,
+    (krb5_context context, krb5_ccache *cache)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cc_initialize,
+    (krb5_context context, krb5_ccache cache, krb5_principal principal)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cc_destroy,
+    (krb5_context context, krb5_ccache cache)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cc_close,
+    (krb5_context context, krb5_ccache cache)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cc_store_cred,
+    (krb5_context context, krb5_ccache cache, krb5_creds *creds)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cc_retrieve_cred,
+    (krb5_context context, krb5_ccache cache,
+     krb5_flags flags, krb5_creds *mcreds,
+     krb5_creds *creds)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cc_get_principal,
+    (krb5_context context, krb5_ccache cache, krb5_principal *principal)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cc_start_seq_get,
+    (krb5_context context, krb5_ccache cache, krb5_cc_cursor *cursor)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cc_next_cred,
+    (krb5_context context, krb5_ccache cache, krb5_cc_cursor *cursor,
+     krb5_creds *creds)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cc_end_seq_get,
+    (krb5_context context, krb5_ccache cache, krb5_cc_cursor *cursor)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cc_remove_cred,
+    (krb5_context context, krb5_ccache cache, krb5_flags flags,
+     krb5_creds *creds)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_cc_set_flags,
+    (krb5_context context, krb5_ccache cache, krb5_flags flags)
+    );
+
+TYPEDEF_FUNC(
+    const char *,
+    KRB5_CALLCONV,
+    krb5_cc_get_type,
+    (krb5_context context, krb5_ccache cache)
+    );
+
+TYPEDEF_FUNC(
+    char *,
+    KRB5_CALLCONV,
+    krb5_kt_get_type,
+    (krb5_context, krb5_keytab keytab)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_kt_get_name,
+    (krb5_context context, krb5_keytab keytab, char *name,
+     unsigned int namelen)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_kt_close,
+    (krb5_context context, krb5_keytab keytab)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_kt_get_entry,
+    (krb5_context context, krb5_keytab keytab,
+     krb5_const_principal principal, krb5_kvno vno,
+     krb5_enctype enctype, krb5_keytab_entry *entry)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_kt_start_seq_get,
+    (krb5_context context, krb5_keytab keytab, krb5_kt_cursor *cursor)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_kt_next_entry,
+    (krb5_context context, krb5_keytab keytab,
+     krb5_keytab_entry *entry, krb5_kt_cursor *cursor)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_kt_end_seq_get,
+    (krb5_context context, krb5_keytab keytab, krb5_kt_cursor *cursor)
+    );
+
+TYPEDEF_FUNC(
+    krb5_error_code,
+    KRB5_CALLCONV,
+    krb5_locate_kdc,
+    (krb5_context context, const krb5_data *realm,
+      struct addrlist *addrlist,
+      int get_masters, int socktype, int family)
+    );
+
+TYPEDEF_FUNC(
+    const char *,
+    KRB5_CALLCONV,
+    krb5_get_error_message,
+    (krb5_context, krb5_error_code)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_free_error_message,
+    (krb5_context, const char *)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    krb5_clear_error_message,
+    (krb5_context)
+    );
+#endif /* __LOADFUNCS_KRB5_H__ */

Added: trunk/src/include/loadfuncs-leash.h
===================================================================
--- trunk/src/include/loadfuncs-leash.h	                        (rev 0)
+++ trunk/src/include/loadfuncs-leash.h	2011-09-28 20:55:23 UTC (rev 25258)
@@ -0,0 +1,413 @@
+#ifndef __LOADFUNCS_LEASH_H__
+#define __LOADFUNCS_LEASH_H__
+
+#include "loadfuncs.h"
+#include <leashwin.h>
+
+#if defined(_WIN64)
+#define LEASH_DLL      "leashw64.dll"
+#else
+#define LEASH_DLL      "leashw32.dll"
+#endif
+
+#define CALLCONV_C
+
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    Leash_kinit_dlg,
+    (HWND, LPLSH_DLGINFO)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    Leash_kinit_dlg_ex,
+    (HWND, LPLSH_DLGINFO_EX)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    Leash_changepwd_dlg,
+    (HWND, LPLSH_DLGINFO)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    Leash_changepwd_dlg_ex,
+    (HWND, LPLSH_DLGINFO_EX)
+    );
+TYPEDEF_FUNC(
+    long,
+    CALLCONV_C,
+    Leash_checkpwd,
+    (char *, char *)
+    );
+TYPEDEF_FUNC(
+    long,
+    CALLCONV_C,
+    Leash_changepwd,
+    (char *, char *, char*, char*)
+    );
+TYPEDEF_FUNC(
+    long,
+    CALLCONV_C,
+    Leash_kinit,
+    (char *, char *, int)
+    );
+TYPEDEF_FUNC(
+    long,
+    CALLCONV_C,
+    Leash_kinit_ex,
+    (char *, char *, int,int, int, int, int, unsigned long)
+    );
+TYPEDEF_FUNC(
+    long,
+    CALLCONV_C,
+    Leash_klist,
+    (HWND, TICKETINFO*)
+    );
+TYPEDEF_FUNC(
+    long,
+    CALLCONV_C,
+    Leash_kdestroy,
+    (void)
+    );
+TYPEDEF_FUNC(
+    long,
+    CALLCONV_C,
+    Leash_get_lsh_errno,
+    (LONG *)
+    );
+TYPEDEF_FUNC(
+    BOOL,
+    CALLCONV_C,
+    Leash_set_help_file,
+    (char *)
+    );
+TYPEDEF_FUNC(
+    char *,
+    CALLCONV_C,
+    Leash_get_help_file,
+    (void)
+    );
+TYPEDEF_FUNC(
+    long,
+    CALLCONV_C,
+    Leash_timesync,
+    (int)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_get_default_lifetime,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_set_default_lifetime,
+    (DWORD)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_reset_default_lifetime,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_get_default_renew_till,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_set_default_renew_till,
+    (DWORD)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_reset_default_renew_till,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_get_default_forwardable,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_set_default_forwardable,
+    (DWORD)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_reset_default_forwardable,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_get_default_noaddresses,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_set_default_noaddresses,
+    (DWORD)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_reset_default_noaddresses,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_get_default_proxiable,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_set_default_proxiable,
+    (DWORD)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_reset_default_proxiable,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_get_default_publicip,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_set_default_publicip,
+    (DWORD)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_reset_default_publicip,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_get_default_use_krb4,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_set_default_use_krb4,
+    (DWORD)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_reset_default_use_krb4,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_get_default_life_min,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_set_default_life_min,
+    (DWORD)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_reset_default_life_min,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_get_default_life_max,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_set_default_life_max,
+    (DWORD)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_reset_default_life_max,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_get_default_renew_min,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_set_default_renew_min,
+    (DWORD)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_reset_default_renew_min,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_get_default_renew_max,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_set_default_renew_max,
+    (DWORD)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_reset_default_renew_max,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_get_default_renewable,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_set_default_renewable,
+    (DWORD)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_reset_default_renewable,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_get_lock_file_locations,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_set_lock_file_locations,
+    (DWORD)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_reset_lock_file_locations,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_get_default_uppercaserealm,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_set_default_uppercaserealm,
+    (DWORD)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_reset_default_uppercaserealm,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_get_default_mslsa_import,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_set_default_mslsa_import,
+    (DWORD)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_reset_default_mslsa_import,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_get_default_preserve_kinit_settings,
+    (void)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_set_default_preserve_kinit_settings,
+    (DWORD)
+    );
+TYPEDEF_FUNC(
+    DWORD,
+    CALLCONV_C,
+    Leash_reset_default_preserve_kinit_settings,
+    (void)
+    );
+TYPEDEF_FUNC(
+    BOOL,
+    CALLCONV_C,
+    Leash_import,
+    (void)
+    );
+TYPEDEF_FUNC(
+    long,
+    CALLCONV_C,
+    Leash_importable,
+    (void)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    Leash_renew,
+    (void)
+    );
+TYPEDEF_FUNC(
+    void,
+    CALLCONV_C,
+    Leash_reset_defaults,
+    (void)
+    );
+/* They are not yet all here... */
+
+#endif /* __LOADFUNCS_LEASH_H__ */

Copied: trunk/src/include/loadfuncs-lsa.h (from rev 25257, trunk/src/windows/leashdll/include/loadfuncs-lsa.h)
===================================================================
--- trunk/src/include/loadfuncs-lsa.h	                        (rev 0)
+++ trunk/src/include/loadfuncs-lsa.h	2011-09-28 20:55:23 UTC (rev 25258)
@@ -0,0 +1,45 @@
+#ifndef __LOADFUNCS_LSA_H__
+#define __LOADFUNCS_LSA_H__
+
+#include "loadfuncs.h"
+
+#define SECUR32_DLL "secur32.dll"
+#define ADVAPI32_DLL "advapi32.dll"
+
+TYPEDEF_FUNC(
+    NTSTATUS,
+    NTAPI,
+    LsaConnectUntrusted,
+    (PHANDLE)
+    );
+TYPEDEF_FUNC(
+    NTSTATUS,
+    NTAPI,
+    LsaLookupAuthenticationPackage,
+    (HANDLE, PLSA_STRING, PULONG)
+    );
+TYPEDEF_FUNC(
+    NTSTATUS,
+    NTAPI,
+    LsaCallAuthenticationPackage,
+    (HANDLE, ULONG, PVOID, ULONG, PVOID *, PULONG, PNTSTATUS)
+    );
+TYPEDEF_FUNC(
+    NTSTATUS,
+    NTAPI,
+    LsaFreeReturnBuffer,
+    (PVOID)
+    );
+TYPEDEF_FUNC(
+    ULONG,
+    NTAPI,
+    LsaNtStatusToWinError,
+    (NTSTATUS)
+    );
+TYPEDEF_FUNC(
+    NTSTATUS,
+    NTAPI,
+    LsaGetLogonSessionData,
+    (PLUID, PSECURITY_LOGON_SESSION_DATA*)
+    );
+#endif /* __LOADFUNCS_LSA_H__ */

Copied: trunk/src/include/loadfuncs-profile.h (from rev 25257, trunk/src/windows/leashdll/include/loadfuncs-profile.h)
===================================================================
--- trunk/src/include/loadfuncs-profile.h	                        (rev 0)
+++ trunk/src/include/loadfuncs-profile.h	2011-09-28 20:55:23 UTC (rev 25258)
@@ -0,0 +1,151 @@
+#ifndef __LOADFUNCS_PROFILE_H__
+#define __LOADFUNCS_PROFILE_H__
+
+#include "loadfuncs.h"
+#include <profile.h>
+
+#if defined(_WIN64)
+#define PROFILE_DLL      "xpprof64.dll"
+#else
+#define PROFILE_DLL      "xpprof32.dll"
+#endif
+
+TYPEDEF_FUNC(
+    long,
+    KRB5_CALLCONV,
+    profile_init,
+    (const_profile_filespec_t *files, profile_t *ret_profile)
+    );
+
+TYPEDEF_FUNC(
+    long,
+    KRB5_CALLCONV,
+    profile_init_path,
+    (const_profile_filespec_list_t filelist, profile_t *ret_profile)
+    );
+
+TYPEDEF_FUNC(
+    long,
+    KRB5_CALLCONV,
+    profile_flush,
+    (profile_t profile)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    profile_abandon,
+    (profile_t profile)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    profile_release,
+    (profile_t profile)
+    );
+
+TYPEDEF_FUNC(
+    long,
+    KRB5_CALLCONV,
+    profile_get_values,
+    (profile_t profile, const char **names, char ***ret_values)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    profile_free_list,
+    (char **list)
+    );
+
+TYPEDEF_FUNC(
+    long,
+    KRB5_CALLCONV,
+    profile_get_string,
+    (profile_t profile, const char *name, const char *subname,
+			const char *subsubname, const char *def_val,
+			char **ret_string)
+    );
+
+TYPEDEF_FUNC(
+    long,
+    KRB5_CALLCONV,
+    profile_get_integer,
+    (profile_t profile, const char *name, const char *subname,
+			const char *subsubname, int def_val,
+			int *ret_default)
+    );
+
+TYPEDEF_FUNC(
+    long,
+    KRB5_CALLCONV,
+    profile_get_relation_names,
+    (profile_t profile, const char **names, char ***ret_names)
+    );
+
+TYPEDEF_FUNC(
+    long,
+    KRB5_CALLCONV,
+    profile_get_subsection_names,
+    (profile_t profile, const char **names, char ***ret_names)
+    );
+
+TYPEDEF_FUNC(
+    long,
+    KRB5_CALLCONV,
+    profile_iterator_create,
+    (profile_t profile, const char **names, int flags, void **ret_iter)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    profile_iterator_free,
+    (void **iter_p)
+    );
+
+TYPEDEF_FUNC(
+    long,
+    KRB5_CALLCONV,
+    profile_iterator,
+    (void **iter_p, char **ret_name, char **ret_value)
+    );
+
+TYPEDEF_FUNC(
+    void,
+    KRB5_CALLCONV,
+    profile_release_string,
+    (char *str)
+    );
+
+TYPEDEF_FUNC(
+    long,
+    KRB5_CALLCONV,
+    profile_update_relation,
+    (profile_t profile, const char **names, const char *old_value, const char *new_value)
+    );
+
+TYPEDEF_FUNC(
+    long,
+    KRB5_CALLCONV,
+    profile_clear_relation,
+    (profile_t profile, const char **names)
+    );
+
+TYPEDEF_FUNC(
+    long,
+    KRB5_CALLCONV,
+    profile_rename_section,
+    (profile_t profile, const char **names, const char *new_name)
+    );
+
+TYPEDEF_FUNC(
+    long,
+    KRB5_CALLCONV,
+    profile_add_relation,
+    (profile_t profile, const char **names, const char *new_value)
+    );
+
+
+#endif /* __LOADFUNCS_PROFILE_H__ */

Modified: trunk/src/windows/Makefile.in
===================================================================
--- trunk/src/windows/Makefile.in	2011-09-28 20:55:18 UTC (rev 25257)
+++ trunk/src/windows/Makefile.in	2011-09-28 20:55:23 UTC (rev 25258)
@@ -1,6 +1,3 @@
 BUILDTOP=..
 NO_OUTPRE=1
-!if "$(KRB5_KFW_COMPILE)"=="1"
-KFWLOGON= kfwlogon
-!endif
-SUBDIRS= wshelper lib leashdll cns gss gina ms2mit $(KFWLOGON)
+SUBDIRS= wshelper lib leashdll cns gss gina ms2mit kfwlogon

Modified: trunk/src/windows/kfwlogon/Makefile.in
===================================================================
--- trunk/src/windows/kfwlogon/Makefile.in	2011-09-28 20:55:18 UTC (rev 25257)
+++ trunk/src/windows/kfwlogon/Makefile.in	2011-09-28 20:55:23 UTC (rev 25258)
@@ -3,11 +3,8 @@
 
 mydir=.
 BUILDTOP=$(REL)..$(S)..
-DEFINES = 
-LOCALINCLUDES = -I$(BUILDTOP) -I$(PISMERE)\athena\util\loadfuncs \
-	-I$(PISMERE)\athena\auth\krb5\src\include\kerberosIV \
-	-I$(PISMERE)\athena\auth\krb4\include \
-	-I$(PISMERE)\athena\auth\leash\include
+DEFINES = -DNO_KRB4
+LOCALINCLUDES = -I$(BUILDTOP) -I$(BUILDTOP)\include -I$(BUILDTOP)\windows\leashdll\include
 PROG_LIBPATH=-L$(TOPLIBD) -L$(KRB5_LIBDIR)
 
 SYSLIBS = kernel32.lib user32.lib advapi32.lib wsock32.lib secur32.lib userenv.lib




More information about the cvs-krb5 mailing list