skyrope-mit-merge-hell-20040226
[openafs.git] / src / WINNT / kfw / inc / loadfuncs / loadfuncs-krb.h
diff --git a/src/WINNT/kfw/inc/loadfuncs/loadfuncs-krb.h b/src/WINNT/kfw/inc/loadfuncs/loadfuncs-krb.h
new file mode 100644 (file)
index 0000000..5ba4578
--- /dev/null
@@ -0,0 +1,306 @@
+#ifndef __LOADFUNCS_KRB_H__
+#define __LOADFUNCS_KRB_H__
+
+#include "loadfuncs.h"
+#include <krb.h>
+
+#define KRB4_DLL      "krbv4w32.dll"
+
+#define krb_err_text(status) pget_krb_err_txt_entry(status)
+#define CALLCONV_C
+
+TYPEDEF_FUNC(
+    char *,
+    CALLCONV_C,
+    tkt_string,
+    ()
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    gettimeofday,
+    (struct timeval *tv, struct timezone *tz)
+    );
+TYPEDEF_FUNC(
+    int,
+    PASCAL,
+    krb_sendauth,
+    (long, int, KTEXT, char *, char *, char *,
+     unsigned long, MSG_DAT *, CREDENTIALS *, 
+     Key_schedule *, struct sockaddr_in *, 
+     struct sockaddr_in FAR *, char *)
+    );
+TYPEDEF_FUNC(
+    int,
+    PASCAL,
+    krb_mk_req,
+    (KTEXT, char *, char *, char *, long)
+    );
+TYPEDEF_FUNC(
+    char *,
+    PASCAL,
+    krb_getrealm,
+    (char *host)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    krb_get_tf_fullname,
+    (char FAR *, char FAR *, char FAR *, char FAR *)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    krb_get_tf_realm,
+    (char FAR *,char FAR *)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    tf_init,
+    (char FAR*,int)
+    );
+TYPEDEF_FUNC(
+    long,
+    CALLCONV_C,
+    LocalHostAddr,
+    ()
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    tf_get_pname,
+    (char FAR*)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    tf_get_pinst,
+    (char FAR*)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    tf_get_cred,
+    (CREDENTIALS FAR*)
+    );
+TYPEDEF_FUNC(
+    void,
+    CALLCONV_C,
+    tf_close,
+    (void)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    tf_save_cred,
+    (char FAR*,char FAR*,char FAR*,C_Block,int,int,KTEXT,long)
+    );
+TYPEDEF_FUNC(
+    BOOL,
+    CALLCONV_C,
+    k_isinst,
+    (char FAR *s)
+    );
+TYPEDEF_FUNC(
+    BOOL,
+    CALLCONV_C,
+    k_isrealm,
+    (char FAR *s)
+    );
+TYPEDEF_FUNC(
+    BOOL,
+    CALLCONV_C,
+    k_isname,
+    (char FAR *s)
+    );
+
+TYPEDEF_FUNC(
+    char **,
+    CALLCONV_C,
+    get_krb_err_txt,
+    (void)
+    );
+
+/* Warning, unique to Windows! */
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    set_krb_debug,
+    (int)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    set_krb_ap_req_debug,
+    (int)
+    );
+TYPEDEF_FUNC(
+    char *,
+    PASCAL,
+    get_krb_err_txt_entry,
+    (int i)
+    );
+TYPEDEF_FUNC(
+    char *,
+    CALLCONV_C,
+    krb_err_func,
+    (int offset, long code)
+    );
+TYPEDEF_FUNC(
+    int,
+    PASCAL,
+    k_decomp_ticket,
+    (KTEXT, unsigned char *, char *, char *, char *, 
+     unsigned long *, C_Block, int *, unsigned long *, 
+     char *, char *, C_Block, Key_schedule)
+    );
+TYPEDEF_FUNC(
+    int,
+    PASCAL,
+    krb_mk_req,
+    (KTEXT,char *,char *,char *,long)
+    );
+TYPEDEF_FUNC(
+    char *,
+    PASCAL,
+    krb_getrealm,
+    (char *host)
+    );
+TYPEDEF_FUNC(
+    char *,
+    PASCAL,
+    krb_realmofhost,
+    (char *host)
+    );
+TYPEDEF_FUNC(
+    char *,
+    CALLCONV_C,
+    krb_get_phost,
+    (char *host)
+    );
+
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    kname_parse,
+    (char *, char *, char *, char *)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    krb_get_pw_in_tkt,
+    (char *, char *, char *, char *, char *, int, char *)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    dest_tkt,
+    (void)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    krb_get_lrealm,
+    (char *, int)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    krb_check_serv,
+    (char*)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    krb_get_cred,
+    (char *, char *, char *, CREDENTIALS *)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    send_to_kdc,
+    (KTEXT, KTEXT, char *)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    create_ciph,
+    (KTEXT, C_Block, char *, char *, char *, unsigned long, int,
+     KTEXT, unsigned long, C_Block *)
+    );
+TYPEDEF_FUNC(
+    char *,
+    CALLCONV_C,
+    krb_get_krbconf2,
+    (char *, size_t *)
+    );
+TYPEDEF_FUNC(
+    char *,
+    CALLCONV_C,
+    krb_get_krbrealm2,
+    (char *, size_t *)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    krb_in_tkt,
+    (char *, char *, char *)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    krb_save_credentials,
+    (char *, char *, char *, C_Block, int, int, KTEXT, long)
+    );
+
+/* NOT IN krb.h HEADER: */
+
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    k_gethostname,
+    (char FAR*, int)
+    );
+TYPEDEF_FUNC(
+    int,
+    CALLCONV_C,
+    krb_get_krbhst,
+    (char *, char *, int)
+    );
+TYPEDEF_FUNC(
+    void,
+    CALLCONV_C,
+    krb_set_tkt_string,
+    (char *)
+    );
+
+/* Evil incarnate... */
+
+TYPEDEF_FUNC(
+    long,
+    CALLCONV_C,
+    kadm_change_your_password,
+    (LPSTR principal, LPSTR old_password,
+     LPSTR new_password, HANDLE FAR * hInfo_desc)
+    );
+TYPEDEF_FUNC(
+    void,
+    CALLCONV_C,
+    initialize_krb_error_func,
+    (void* func, HANDLE *__et_list)
+    );
+TYPEDEF_FUNC(
+    void,
+    CALLCONV_C,
+    initialize_kadm_error_table,
+    (HANDLE *__et_list)
+    );
+TYPEDEF_FUNC(
+    LONG,
+    CALLCONV_C,
+    lsh_LoadKrb4LeashErrorTables,
+    (HMODULE hLeashDll, INT useCallBackFunction)
+    );
+
+#endif /* __LOADFUNCS_KRB_H__ */