2
* Copyright (c) 2004 Massachusetts Institute of Technology
2
* Copyright (c) 2005 Massachusetts Institute of Technology
4
4
* Permission is hereby granted, free of charge, to any person
5
5
* obtaining a copy of this software and associated documentation
51
46
#include<datarep.h>
52
47
#include<krb5_msgs.h>
49
typedef enum tag_k5_lsa_import {
50
K5_LSAIMPORT_NEVER = 0,
51
K5_LSAIMPORT_ALWAYS = 1,
52
K5_LSAIMPORT_MATCH = 2, /* only when the principal name matches */
54
55
#define TYPENAME_ENCTYPE L"EncType"
55
56
#define TYPENAME_ADDR_LIST L"AddrList"
56
57
#define TYPENAME_KRB5_FLAGS L"Krb5Flags"
58
#define TYPENAME_KRB5_PRINC L"Krb5Principal"
59
#define TYPENAME_KVNO L"Kvno"
58
61
#define ATTRNAME_KEY_ENCTYPE L"KeyEncType"
59
62
#define ATTRNAME_TKT_ENCTYPE L"TktEncType"
60
63
#define ATTRNAME_ADDR_LIST L"AddrList"
61
64
#define ATTRNAME_KRB5_FLAGS L"Krb5Flags"
62
65
#define ATTRNAME_KRB5_CCNAME L"Krb5CCName"
66
#define ATTRNAME_KVNO L"Kvno"
75
79
extern khm_int32 type_id_enctype;
76
80
extern khm_int32 type_id_addr_list;
77
81
extern khm_int32 type_id_krb5_flags;
82
extern khm_int32 type_id_krb5_princ;
83
extern khm_int32 type_id_kvno;
85
extern BOOL type_regd_krb5_princ;
79
87
extern khm_int32 attr_id_key_enctype;
80
88
extern khm_int32 attr_id_tkt_enctype;
81
89
extern khm_int32 attr_id_addr_list;
82
90
extern khm_int32 attr_id_krb5_flags;
83
91
extern khm_int32 attr_id_krb5_ccname;
92
extern khm_int32 attr_id_kvno;
94
extern khm_ui_4 k5_commctl_version;
96
#define IS_COMMCTL6() (k5_commctl_version >= 0x60000)
85
98
/* Configuration spaces */
86
99
#define CSNAME_KRB5CRED L"Krb5Cred"
87
100
#define CSNAME_PARAMS L"Parameters"
88
101
#define CSNAME_PROMPTCACHE L"PromptCache"
102
#define CSNAME_REALMS L"Realms"
90
104
/* plugin constants */
91
105
#define KRB5_PLUGIN_NAME L"Krb5Cred"
106
#define KRB5_IDENTPRO_NAME L"Krb5Ident"
93
108
#define KRB5_CREDTYPE_NAME L"Krb5Cred"
111
/* maximum number of characters in a realm name */
112
#define K5_MAXCCH_REALM 256
114
/* maximum number of characters in a host name */
115
#define K5_MAXCCH_HOST 128
117
/* maximum number of KDC's per realm */
118
#define K5_MAX_KDC 64
120
/* maximum number of domains that map to a realm */
121
#define K5_MAX_DOMAIN_MAPPINGS 32
95
123
extern khm_handle csp_plugins;
96
124
extern khm_handle csp_krbcred;
97
125
extern khm_handle csp_params;
114
142
/* plugin callbacks */
115
143
khm_int32 KHMAPI k5_msg_callback(khm_int32 msg_type, khm_int32 msg_subtype, khm_ui_4 uparam, void * vparam);
144
khm_int32 KHMAPI k5_ident_callback(khm_int32 msg_type, khm_int32 msg_subtype, khm_ui_4 uparam, void * vparam);
117
146
/* kinit fiber */
118
147
typedef struct _fiber_job_t {
180
212
k5_unregister_config_panels(void);
215
k5_ccconfig_dlgproc(HWND hwnd,
221
k5_id_tab_dlgproc(HWND hwndDlg,
227
k5_ids_tab_dlgproc(HWND hwnd,