kerberos 0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README +11 -0
- data/bin/example.rb +55 -0
- data/ext/admin.h +517 -0
- data/ext/extconf.rb +12 -0
- data/ext/krb5.h +3011 -0
- data/ext/ruby_kerberos.c +362 -0
- data/ext/ruby_kerberos.h +25 -0
- data/lib/kerberos.rb +18 -0
- metadata +52 -0
data/ext/krb5.h
ADDED
@@ -0,0 +1,3011 @@
|
|
1
|
+
/* This file is generated, please don't edit it directly. */
|
2
|
+
#define SIZEOF_INT 4
|
3
|
+
#define SIZEOF_LONG 4
|
4
|
+
#define SIZEOF_SHORT 2
|
5
|
+
/*
|
6
|
+
* include/krb5.h
|
7
|
+
*
|
8
|
+
* Copyright 1989,1990,1995,2001, 2003 by the Massachusetts Institute of Technology.
|
9
|
+
* All Rights Reserved.
|
10
|
+
*
|
11
|
+
* Export of this software from the United States of America may
|
12
|
+
* require a specific license from the United States Government.
|
13
|
+
* It is the responsibility of any person or organization contemplating
|
14
|
+
* export to obtain such a license before exporting.
|
15
|
+
*
|
16
|
+
* WITHIN THAT CONSTRAINT, permission to use, copy, modify, and
|
17
|
+
* distribute this software and its documentation for any purpose and
|
18
|
+
* without fee is hereby granted, provided that the above copyright
|
19
|
+
* notice appear in all copies and that both that copyright notice and
|
20
|
+
* this permission notice appear in supporting documentation, and that
|
21
|
+
* the name of M.I.T. not be used in advertising or publicity pertaining
|
22
|
+
* to distribution of the software without specific, written prior
|
23
|
+
* permission. Furthermore if you modify this software you must label
|
24
|
+
* your software as modified software and not distribute it in such a
|
25
|
+
* fashion that it might be confused with the original M.I.T. software.
|
26
|
+
* M.I.T. makes no representations about the suitability of
|
27
|
+
* this software for any purpose. It is provided "as is" without express
|
28
|
+
* or implied warranty.
|
29
|
+
*
|
30
|
+
*
|
31
|
+
* General definitions for Kerberos version 5.
|
32
|
+
*/
|
33
|
+
|
34
|
+
/*
|
35
|
+
* Copyright (C) 1998 by the FundsXpress, INC.
|
36
|
+
*
|
37
|
+
* All rights reserved.
|
38
|
+
*
|
39
|
+
* Export of this software from the United States of America may require
|
40
|
+
* a specific license from the United States Government. It is the
|
41
|
+
* responsibility of any person or organization contemplating export to
|
42
|
+
* obtain such a license before exporting.
|
43
|
+
*
|
44
|
+
* WITHIN THAT CONSTRAINT, permission to use, copy, modify, and
|
45
|
+
* distribute this software and its documentation for any purpose and
|
46
|
+
* without fee is hereby granted, provided that the above copyright
|
47
|
+
* notice appear in all copies and that both that copyright notice and
|
48
|
+
* this permission notice appear in supporting documentation, and that
|
49
|
+
* the name of FundsXpress. not be used in advertising or publicity pertaining
|
50
|
+
* to distribution of the software without specific, written prior
|
51
|
+
* permission. FundsXpress makes no representations about the suitability of
|
52
|
+
* this software for any purpose. It is provided "as is" without express
|
53
|
+
* or implied warranty.
|
54
|
+
*
|
55
|
+
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
|
56
|
+
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
|
57
|
+
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
58
|
+
*/
|
59
|
+
|
60
|
+
#ifndef KRB5_GENERAL__
|
61
|
+
#define KRB5_GENERAL__
|
62
|
+
|
63
|
+
/* By default, do not expose deprecated interfaces. */
|
64
|
+
#ifndef KRB5_DEPRECATED
|
65
|
+
#define KRB5_DEPRECATED 0
|
66
|
+
#endif
|
67
|
+
/* Do not expose private interfaces. Build system will override. */
|
68
|
+
#ifndef KRB5_PRIVATE
|
69
|
+
#define KRB5_PRIVATE 0
|
70
|
+
#endif
|
71
|
+
|
72
|
+
#if defined(__MACH__) && defined(__APPLE__)
|
73
|
+
# include <TargetConditionals.h>
|
74
|
+
# if TARGET_RT_MAC_CFM
|
75
|
+
# error "Use KfM 4.0 SDK headers for CFM compilation."
|
76
|
+
# endif
|
77
|
+
#endif
|
78
|
+
|
79
|
+
#if defined(_MSDOS) || defined(_WIN32)
|
80
|
+
#include <win-mac.h>
|
81
|
+
#endif
|
82
|
+
|
83
|
+
#ifndef KRB5_CONFIG__
|
84
|
+
#ifndef KRB5_CALLCONV
|
85
|
+
#define KRB5_CALLCONV
|
86
|
+
#define KRB5_CALLCONV_C
|
87
|
+
#endif /* !KRB5_CALLCONV */
|
88
|
+
#endif /* !KRB5_CONFIG__ */
|
89
|
+
|
90
|
+
#ifndef KRB5_CALLCONV_WRONG
|
91
|
+
#define KRB5_CALLCONV_WRONG
|
92
|
+
#endif
|
93
|
+
|
94
|
+
#ifndef THREEPARAMOPEN
|
95
|
+
#define THREEPARAMOPEN(x,y,z) open(x,y,z)
|
96
|
+
#endif
|
97
|
+
|
98
|
+
#define KRB5_OLD_CRYPTO
|
99
|
+
|
100
|
+
#include <stdlib.h>
|
101
|
+
#include <limits.h> /* for *_MAX */
|
102
|
+
|
103
|
+
#ifndef KRB5INT_BEGIN_DECLS
|
104
|
+
#if defined(__cplusplus)
|
105
|
+
#define KRB5INT_BEGIN_DECLS extern "C" {
|
106
|
+
#define KRB5INT_END_DECLS }
|
107
|
+
#else
|
108
|
+
#define KRB5INT_BEGIN_DECLS
|
109
|
+
#define KRB5INT_END_DECLS
|
110
|
+
#endif
|
111
|
+
#endif
|
112
|
+
|
113
|
+
KRB5INT_BEGIN_DECLS
|
114
|
+
|
115
|
+
#if TARGET_OS_MAC
|
116
|
+
# pragma options align=mac68k
|
117
|
+
#endif
|
118
|
+
|
119
|
+
/* from profile.h */
|
120
|
+
struct _profile_t;
|
121
|
+
/* typedef struct _profile_t *profile_t; */
|
122
|
+
|
123
|
+
/*
|
124
|
+
* begin wordsize.h
|
125
|
+
*/
|
126
|
+
|
127
|
+
/*
|
128
|
+
* Word-size related definition.
|
129
|
+
*/
|
130
|
+
|
131
|
+
typedef unsigned char krb5_octet;
|
132
|
+
|
133
|
+
#if INT_MAX == 0x7fff
|
134
|
+
typedef int krb5_int16;
|
135
|
+
typedef unsigned int krb5_ui_2;
|
136
|
+
#elif SHRT_MAX == 0x7fff
|
137
|
+
typedef short krb5_int16;
|
138
|
+
typedef unsigned short krb5_ui_2;
|
139
|
+
#else
|
140
|
+
#error undefined 16 bit type
|
141
|
+
#endif
|
142
|
+
|
143
|
+
#if INT_MAX == 0x7fffffffL
|
144
|
+
typedef int krb5_int32;
|
145
|
+
typedef unsigned int krb5_ui_4;
|
146
|
+
#elif LONG_MAX == 0x7fffffffL
|
147
|
+
typedef long krb5_int32;
|
148
|
+
typedef unsigned long krb5_ui_4;
|
149
|
+
#elif SHRT_MAX == 0x7fffffffL
|
150
|
+
typedef short krb5_int32;
|
151
|
+
typedef unsigned short krb5_ui_4;
|
152
|
+
#else
|
153
|
+
#error: undefined 32 bit type
|
154
|
+
#endif
|
155
|
+
|
156
|
+
#define VALID_INT_BITS INT_MAX
|
157
|
+
#define VALID_UINT_BITS UINT_MAX
|
158
|
+
|
159
|
+
#define KRB5_INT32_MAX 2147483647
|
160
|
+
/* this strange form is necessary since - is a unary operator, not a sign
|
161
|
+
indicator */
|
162
|
+
#define KRB5_INT32_MIN (-KRB5_INT32_MAX-1)
|
163
|
+
|
164
|
+
#define KRB5_INT16_MAX 65535
|
165
|
+
/* this strange form is necessary since - is a unary operator, not a sign
|
166
|
+
indicator */
|
167
|
+
#define KRB5_INT16_MIN (-KRB5_INT16_MAX-1)
|
168
|
+
|
169
|
+
/*
|
170
|
+
* end wordsize.h
|
171
|
+
*/
|
172
|
+
|
173
|
+
/*
|
174
|
+
* begin "base-defs.h"
|
175
|
+
*/
|
176
|
+
|
177
|
+
/*
|
178
|
+
* Basic definitions for Kerberos V5 library
|
179
|
+
*/
|
180
|
+
|
181
|
+
#ifndef FALSE
|
182
|
+
#define FALSE 0
|
183
|
+
#endif
|
184
|
+
#ifndef TRUE
|
185
|
+
#define TRUE 1
|
186
|
+
#endif
|
187
|
+
|
188
|
+
typedef unsigned int krb5_boolean;
|
189
|
+
typedef unsigned int krb5_msgtype;
|
190
|
+
typedef unsigned int krb5_kvno;
|
191
|
+
|
192
|
+
typedef krb5_int32 krb5_addrtype;
|
193
|
+
typedef krb5_int32 krb5_enctype;
|
194
|
+
typedef krb5_int32 krb5_cksumtype;
|
195
|
+
typedef krb5_int32 krb5_authdatatype;
|
196
|
+
typedef krb5_int32 krb5_keyusage;
|
197
|
+
|
198
|
+
typedef krb5_int32 krb5_preauthtype; /* This may change, later on */
|
199
|
+
typedef krb5_int32 krb5_flags;
|
200
|
+
typedef krb5_int32 krb5_timestamp;
|
201
|
+
typedef krb5_int32 krb5_error_code;
|
202
|
+
typedef krb5_int32 krb5_deltat;
|
203
|
+
|
204
|
+
typedef krb5_error_code krb5_magic;
|
205
|
+
|
206
|
+
typedef struct _krb5_data {
|
207
|
+
krb5_magic magic;
|
208
|
+
unsigned int length;
|
209
|
+
char *data;
|
210
|
+
} krb5_data;
|
211
|
+
|
212
|
+
/*
|
213
|
+
* Hack length for crypto library to use the afs_string_to_key It is
|
214
|
+
* equivalent to -1 without possible sign extension
|
215
|
+
* We also overload for an unset salt type length - which is also -1, but
|
216
|
+
* hey, why not....
|
217
|
+
*/
|
218
|
+
#define SALT_TYPE_AFS_LENGTH UINT_MAX
|
219
|
+
#define SALT_TYPE_NO_LENGTH UINT_MAX
|
220
|
+
|
221
|
+
typedef void * krb5_pointer;
|
222
|
+
typedef void const * krb5_const_pointer;
|
223
|
+
|
224
|
+
typedef struct krb5_principal_data {
|
225
|
+
krb5_magic magic;
|
226
|
+
krb5_data realm;
|
227
|
+
krb5_data *data; /* An array of strings */
|
228
|
+
krb5_int32 length;
|
229
|
+
krb5_int32 type;
|
230
|
+
} krb5_principal_data;
|
231
|
+
|
232
|
+
typedef krb5_principal_data * krb5_principal;
|
233
|
+
|
234
|
+
/*
|
235
|
+
* Per V5 spec on definition of principal types
|
236
|
+
*/
|
237
|
+
|
238
|
+
/* Name type not known */
|
239
|
+
#define KRB5_NT_UNKNOWN 0
|
240
|
+
/* Just the name of the principal as in DCE, or for users */
|
241
|
+
#define KRB5_NT_PRINCIPAL 1
|
242
|
+
/* Service and other unique instance (krbtgt) */
|
243
|
+
#define KRB5_NT_SRV_INST 2
|
244
|
+
/* Service with host name as instance (telnet, rcommands) */
|
245
|
+
#define KRB5_NT_SRV_HST 3
|
246
|
+
/* Service with host as remaining components */
|
247
|
+
#define KRB5_NT_SRV_XHST 4
|
248
|
+
/* Unique ID */
|
249
|
+
#define KRB5_NT_UID 5
|
250
|
+
|
251
|
+
/* constant version thereof: */
|
252
|
+
typedef const krb5_principal_data *krb5_const_principal;
|
253
|
+
|
254
|
+
#define krb5_princ_realm(context, princ) (&(princ)->realm)
|
255
|
+
#define krb5_princ_set_realm(context, princ,value) ((princ)->realm = *(value))
|
256
|
+
#define krb5_princ_set_realm_length(context, princ,value) (princ)->realm.length = (value)
|
257
|
+
#define krb5_princ_set_realm_data(context, princ,value) (princ)->realm.data = (value)
|
258
|
+
#define krb5_princ_size(context, princ) (princ)->length
|
259
|
+
#define krb5_princ_type(context, princ) (princ)->type
|
260
|
+
#define krb5_princ_name(context, princ) (princ)->data
|
261
|
+
#define krb5_princ_component(context, princ,i) \
|
262
|
+
(((i) < krb5_princ_size(context, princ)) \
|
263
|
+
? (princ)->data + (i) \
|
264
|
+
: NULL)
|
265
|
+
|
266
|
+
/*
|
267
|
+
* end "base-defs.h"
|
268
|
+
*/
|
269
|
+
|
270
|
+
/*
|
271
|
+
* begin "hostaddr.h"
|
272
|
+
*/
|
273
|
+
|
274
|
+
/* structure for address */
|
275
|
+
typedef struct _krb5_address {
|
276
|
+
krb5_magic magic;
|
277
|
+
krb5_addrtype addrtype;
|
278
|
+
unsigned int length;
|
279
|
+
krb5_octet *contents;
|
280
|
+
} krb5_address;
|
281
|
+
|
282
|
+
/* per Kerberos v5 protocol spec */
|
283
|
+
#define ADDRTYPE_INET 0x0002
|
284
|
+
#define ADDRTYPE_CHAOS 0x0005
|
285
|
+
#define ADDRTYPE_XNS 0x0006
|
286
|
+
#define ADDRTYPE_ISO 0x0007
|
287
|
+
#define ADDRTYPE_DDP 0x0010
|
288
|
+
#define ADDRTYPE_INET6 0x0018
|
289
|
+
/* not yet in the spec... */
|
290
|
+
#define ADDRTYPE_ADDRPORT 0x0100
|
291
|
+
#define ADDRTYPE_IPPORT 0x0101
|
292
|
+
|
293
|
+
/* macros to determine if a type is a local type */
|
294
|
+
#define ADDRTYPE_IS_LOCAL(addrtype) (addrtype & 0x8000)
|
295
|
+
|
296
|
+
/*
|
297
|
+
* end "hostaddr.h"
|
298
|
+
*/
|
299
|
+
|
300
|
+
|
301
|
+
struct _krb5_context;
|
302
|
+
typedef struct _krb5_context * krb5_context;
|
303
|
+
|
304
|
+
struct _krb5_auth_context;
|
305
|
+
typedef struct _krb5_auth_context * krb5_auth_context;
|
306
|
+
|
307
|
+
struct _krb5_cryptosystem_entry;
|
308
|
+
|
309
|
+
/*
|
310
|
+
* begin "encryption.h"
|
311
|
+
*/
|
312
|
+
|
313
|
+
typedef struct _krb5_keyblock {
|
314
|
+
krb5_magic magic;
|
315
|
+
krb5_enctype enctype;
|
316
|
+
unsigned int length;
|
317
|
+
krb5_octet *contents;
|
318
|
+
} krb5_keyblock;
|
319
|
+
|
320
|
+
#ifdef KRB5_OLD_CRYPTO
|
321
|
+
typedef struct _krb5_encrypt_block {
|
322
|
+
krb5_magic magic;
|
323
|
+
krb5_enctype crypto_entry; /* to call krb5_encrypt_size, you need
|
324
|
+
this. it was a pointer, but it
|
325
|
+
doesn't have to be. gross. */
|
326
|
+
krb5_keyblock *key;
|
327
|
+
} krb5_encrypt_block;
|
328
|
+
#endif
|
329
|
+
|
330
|
+
typedef struct _krb5_checksum {
|
331
|
+
krb5_magic magic;
|
332
|
+
krb5_cksumtype checksum_type; /* checksum type */
|
333
|
+
unsigned int length;
|
334
|
+
krb5_octet *contents;
|
335
|
+
} krb5_checksum;
|
336
|
+
|
337
|
+
typedef struct _krb5_enc_data {
|
338
|
+
krb5_magic magic;
|
339
|
+
krb5_enctype enctype;
|
340
|
+
krb5_kvno kvno;
|
341
|
+
krb5_data ciphertext;
|
342
|
+
} krb5_enc_data;
|
343
|
+
|
344
|
+
/* per Kerberos v5 protocol spec */
|
345
|
+
#define ENCTYPE_NULL 0x0000
|
346
|
+
#define ENCTYPE_DES_CBC_CRC 0x0001 /* DES cbc mode with CRC-32 */
|
347
|
+
#define ENCTYPE_DES_CBC_MD4 0x0002 /* DES cbc mode with RSA-MD4 */
|
348
|
+
#define ENCTYPE_DES_CBC_MD5 0x0003 /* DES cbc mode with RSA-MD5 */
|
349
|
+
#define ENCTYPE_DES_CBC_RAW 0x0004 /* DES cbc mode raw */
|
350
|
+
/* XXX deprecated? */
|
351
|
+
#define ENCTYPE_DES3_CBC_SHA 0x0005 /* DES-3 cbc mode with NIST-SHA */
|
352
|
+
#define ENCTYPE_DES3_CBC_RAW 0x0006 /* DES-3 cbc mode raw */
|
353
|
+
#define ENCTYPE_DES_HMAC_SHA1 0x0008
|
354
|
+
#define ENCTYPE_DES3_CBC_SHA1 0x0010
|
355
|
+
#define ENCTYPE_AES128_CTS_HMAC_SHA1_96 0x0011
|
356
|
+
#define ENCTYPE_AES256_CTS_HMAC_SHA1_96 0x0012
|
357
|
+
#define ENCTYPE_ARCFOUR_HMAC 0x0017
|
358
|
+
#define ENCTYPE_ARCFOUR_HMAC_EXP 0x0018
|
359
|
+
#define ENCTYPE_UNKNOWN 0x01ff
|
360
|
+
|
361
|
+
#define CKSUMTYPE_CRC32 0x0001
|
362
|
+
#define CKSUMTYPE_RSA_MD4 0x0002
|
363
|
+
#define CKSUMTYPE_RSA_MD4_DES 0x0003
|
364
|
+
#define CKSUMTYPE_DESCBC 0x0004
|
365
|
+
/* des-mac-k */
|
366
|
+
/* rsa-md4-des-k */
|
367
|
+
#define CKSUMTYPE_RSA_MD5 0x0007
|
368
|
+
#define CKSUMTYPE_RSA_MD5_DES 0x0008
|
369
|
+
#define CKSUMTYPE_NIST_SHA 0x0009
|
370
|
+
#define CKSUMTYPE_HMAC_SHA1_DES3 0x000c
|
371
|
+
#define CKSUMTYPE_HMAC_SHA1_96_AES128 0x000f
|
372
|
+
#define CKSUMTYPE_HMAC_SHA1_96_AES256 0x0010
|
373
|
+
#define CKSUMTYPE_HMAC_MD5_ARCFOUR -138 /*Microsoft md5 hmac cksumtype*/
|
374
|
+
|
375
|
+
/* The following are entropy source designations. Whenever
|
376
|
+
* krb5_C_random_add_entropy is called, one of these source ids is passed
|
377
|
+
* in. This allows the library to better estimate bits of
|
378
|
+
* entropy in the sample and to keep track of what sources of entropy have
|
379
|
+
* contributed enough entropy. Sources marked internal MUST NOT be
|
380
|
+
* used by applications outside the Kerberos library
|
381
|
+
*/
|
382
|
+
|
383
|
+
enum {
|
384
|
+
KRB5_C_RANDSOURCE_OLDAPI = 0, /*calls to krb5_C_RANDOM_SEED (INTERNAL)*/
|
385
|
+
KRB5_C_RANDSOURCE_OSRAND = 1, /* /dev/random or equivalent (internal)*/
|
386
|
+
KRB5_C_RANDSOURCE_TRUSTEDPARTY = 2, /* From KDC or other trusted party*/
|
387
|
+
/*This source should be used carefully; data in this category
|
388
|
+
* should be from a third party trusted to give random bits
|
389
|
+
* For example keys issued by the KDC in the application server.
|
390
|
+
*/
|
391
|
+
KRB5_C_RANDSOURCE_TIMING = 3, /* Timing of operations*/
|
392
|
+
KRB5_C_RANDSOURCE_EXTERNAL_PROTOCOL = 4, /*Protocol data possibly from attacker*/
|
393
|
+
KRB5_C_RANDSOURCE_MAX = 5 /*Do not use; maximum source ID*/
|
394
|
+
};
|
395
|
+
|
396
|
+
#ifndef krb5_roundup
|
397
|
+
/* round x up to nearest multiple of y */
|
398
|
+
#define krb5_roundup(x, y) ((((x) + (y) - 1)/(y))*(y))
|
399
|
+
#endif /* roundup */
|
400
|
+
|
401
|
+
/* macro function definitions to help clean up code */
|
402
|
+
|
403
|
+
#if 1
|
404
|
+
#define krb5_x(ptr,args) ((ptr)?((*(ptr)) args):(abort(),1))
|
405
|
+
#define krb5_xc(ptr,args) ((ptr)?((*(ptr)) args):(abort(),(char*)0))
|
406
|
+
#else
|
407
|
+
#define krb5_x(ptr,args) ((*(ptr)) args)
|
408
|
+
#define krb5_xc(ptr,args) ((*(ptr)) args)
|
409
|
+
#endif
|
410
|
+
|
411
|
+
krb5_error_code KRB5_CALLCONV
|
412
|
+
krb5_c_encrypt
|
413
|
+
(krb5_context context, const krb5_keyblock *key,
|
414
|
+
krb5_keyusage usage, const krb5_data *cipher_state,
|
415
|
+
const krb5_data *input, krb5_enc_data *output);
|
416
|
+
|
417
|
+
krb5_error_code KRB5_CALLCONV
|
418
|
+
krb5_c_decrypt
|
419
|
+
(krb5_context context, const krb5_keyblock *key,
|
420
|
+
krb5_keyusage usage, const krb5_data *cipher_state,
|
421
|
+
const krb5_enc_data *input, krb5_data *output);
|
422
|
+
|
423
|
+
krb5_error_code KRB5_CALLCONV
|
424
|
+
krb5_c_encrypt_length
|
425
|
+
(krb5_context context, krb5_enctype enctype,
|
426
|
+
size_t inputlen, size_t *length);
|
427
|
+
|
428
|
+
krb5_error_code KRB5_CALLCONV
|
429
|
+
krb5_c_block_size
|
430
|
+
(krb5_context context, krb5_enctype enctype,
|
431
|
+
size_t *blocksize);
|
432
|
+
|
433
|
+
krb5_error_code KRB5_CALLCONV
|
434
|
+
krb5_c_init_state
|
435
|
+
(krb5_context context,
|
436
|
+
const krb5_keyblock *key, krb5_keyusage usage,
|
437
|
+
krb5_data *new_state);
|
438
|
+
|
439
|
+
krb5_error_code KRB5_CALLCONV
|
440
|
+
krb5_c_free_state
|
441
|
+
(krb5_context context, const krb5_keyblock *key, krb5_data *state);
|
442
|
+
|
443
|
+
krb5_error_code KRB5_CALLCONV
|
444
|
+
krb5_c_make_random_key
|
445
|
+
(krb5_context context, krb5_enctype enctype,
|
446
|
+
krb5_keyblock *k5_random_key);
|
447
|
+
|
448
|
+
/* Register a new entropy sample with the PRNG. may cause
|
449
|
+
* the PRNG to be reseeded, although this is not guaranteed. See previous randsource definitions
|
450
|
+
* for information on how each source should be used.
|
451
|
+
*/
|
452
|
+
krb5_error_code KRB5_CALLCONV
|
453
|
+
krb5_c_random_add_entropy
|
454
|
+
(krb5_context context, unsigned int randsource_id, const krb5_data *data);
|
455
|
+
|
456
|
+
|
457
|
+
krb5_error_code KRB5_CALLCONV
|
458
|
+
krb5_c_random_make_octets
|
459
|
+
(krb5_context context, krb5_data *data);
|
460
|
+
|
461
|
+
/*
|
462
|
+
* Collect entropy from the OS if possible. strong requests that as strong
|
463
|
+
* of a source of entropy as available be used. Setting strong may
|
464
|
+
* increase the probability of blocking and should not be used for normal
|
465
|
+
* applications. Good uses include seeding the PRNG for kadmind
|
466
|
+
* and realm setup.
|
467
|
+
* If successful is non-null, then successful is set to 1 if the OS provided
|
468
|
+
* entropy else zero.
|
469
|
+
*/
|
470
|
+
krb5_error_code KRB5_CALLCONV
|
471
|
+
krb5_c_random_os_entropy
|
472
|
+
(krb5_context context, int strong, int *success);
|
473
|
+
|
474
|
+
/*deprecated*/ krb5_error_code KRB5_CALLCONV
|
475
|
+
krb5_c_random_seed
|
476
|
+
(krb5_context context, krb5_data *data);
|
477
|
+
|
478
|
+
krb5_error_code KRB5_CALLCONV
|
479
|
+
krb5_c_string_to_key
|
480
|
+
(krb5_context context, krb5_enctype enctype,
|
481
|
+
const krb5_data *string, const krb5_data *salt,
|
482
|
+
krb5_keyblock *key);
|
483
|
+
krb5_error_code KRB5_CALLCONV
|
484
|
+
krb5_c_string_to_key_with_params(krb5_context context,
|
485
|
+
krb5_enctype enctype,
|
486
|
+
const krb5_data *string,
|
487
|
+
const krb5_data *salt,
|
488
|
+
const krb5_data *params,
|
489
|
+
krb5_keyblock *key);
|
490
|
+
|
491
|
+
krb5_error_code KRB5_CALLCONV
|
492
|
+
krb5_c_enctype_compare
|
493
|
+
(krb5_context context, krb5_enctype e1, krb5_enctype e2,
|
494
|
+
krb5_boolean *similar);
|
495
|
+
|
496
|
+
krb5_error_code KRB5_CALLCONV
|
497
|
+
krb5_c_make_checksum
|
498
|
+
(krb5_context context, krb5_cksumtype cksumtype,
|
499
|
+
const krb5_keyblock *key, krb5_keyusage usage,
|
500
|
+
const krb5_data *input, krb5_checksum *cksum);
|
501
|
+
|
502
|
+
krb5_error_code KRB5_CALLCONV
|
503
|
+
krb5_c_verify_checksum
|
504
|
+
(krb5_context context,
|
505
|
+
const krb5_keyblock *key, krb5_keyusage usage,
|
506
|
+
const krb5_data *data,
|
507
|
+
const krb5_checksum *cksum,
|
508
|
+
krb5_boolean *valid);
|
509
|
+
|
510
|
+
krb5_error_code KRB5_CALLCONV
|
511
|
+
krb5_c_checksum_length
|
512
|
+
(krb5_context context, krb5_cksumtype cksumtype,
|
513
|
+
size_t *length);
|
514
|
+
|
515
|
+
krb5_error_code KRB5_CALLCONV
|
516
|
+
krb5_c_keyed_checksum_types
|
517
|
+
(krb5_context context, krb5_enctype enctype,
|
518
|
+
unsigned int *count, krb5_cksumtype **cksumtypes);
|
519
|
+
|
520
|
+
#define KRB5_KEYUSAGE_AS_REQ_PA_ENC_TS 1
|
521
|
+
#define KRB5_KEYUSAGE_KDC_REP_TICKET 2
|
522
|
+
#define KRB5_KEYUSAGE_AS_REP_ENCPART 3
|
523
|
+
#define KRB5_KEYUSAGE_TGS_REQ_AD_SESSKEY 4
|
524
|
+
#define KRB5_KEYUSAGE_TGS_REQ_AD_SUBKEY 5
|
525
|
+
#define KRB5_KEYUSAGE_TGS_REQ_AUTH_CKSUM 6
|
526
|
+
#define KRB5_KEYUSAGE_TGS_REQ_AUTH 7
|
527
|
+
#define KRB5_KEYUSAGE_TGS_REP_ENCPART_SESSKEY 8
|
528
|
+
#define KRB5_KEYUSAGE_TGS_REP_ENCPART_SUBKEY 9
|
529
|
+
#define KRB5_KEYUSAGE_AP_REQ_AUTH_CKSUM 10
|
530
|
+
#define KRB5_KEYUSAGE_AP_REQ_AUTH 11
|
531
|
+
#define KRB5_KEYUSAGE_AP_REP_ENCPART 12
|
532
|
+
#define KRB5_KEYUSAGE_KRB_PRIV_ENCPART 13
|
533
|
+
#define KRB5_KEYUSAGE_KRB_CRED_ENCPART 14
|
534
|
+
#define KRB5_KEYUSAGE_KRB_SAFE_CKSUM 15
|
535
|
+
#define KRB5_KEYUSAGE_APP_DATA_ENCRYPT 16
|
536
|
+
#define KRB5_KEYUSAGE_APP_DATA_CKSUM 17
|
537
|
+
#define KRB5_KEYUSAGE_KRB_ERROR_CKSUM 18
|
538
|
+
#define KRB5_KEYUSAGE_AD_KDCISSUED_CKSUM 19
|
539
|
+
#define KRB5_KEYUSAGE_AD_MTE 20
|
540
|
+
#define KRB5_KEYUSAGE_AD_ITE 21
|
541
|
+
|
542
|
+
/* XXX need to register these */
|
543
|
+
|
544
|
+
#define KRB5_KEYUSAGE_GSS_TOK_MIC 22
|
545
|
+
#define KRB5_KEYUSAGE_GSS_TOK_WRAP_INTEG 23
|
546
|
+
#define KRB5_KEYUSAGE_GSS_TOK_WRAP_PRIV 24
|
547
|
+
|
548
|
+
/* Defined in hardware preauth draft */
|
549
|
+
|
550
|
+
#define KRB5_KEYUSAGE_PA_SAM_CHALLENGE_CKSUM 25
|
551
|
+
#define KRB5_KEYUSAGE_PA_SAM_CHALLENGE_TRACKID 26
|
552
|
+
#define KRB5_KEYUSAGE_PA_SAM_RESPONSE 27
|
553
|
+
|
554
|
+
krb5_boolean KRB5_CALLCONV krb5_c_valid_enctype
|
555
|
+
(krb5_enctype ktype);
|
556
|
+
krb5_boolean KRB5_CALLCONV krb5_c_valid_cksumtype
|
557
|
+
(krb5_cksumtype ctype);
|
558
|
+
krb5_boolean KRB5_CALLCONV krb5_c_is_coll_proof_cksum
|
559
|
+
(krb5_cksumtype ctype);
|
560
|
+
krb5_boolean KRB5_CALLCONV krb5_c_is_keyed_cksum
|
561
|
+
(krb5_cksumtype ctype);
|
562
|
+
|
563
|
+
#if KRB5_PRIVATE
|
564
|
+
/* Use the above four instead. */
|
565
|
+
krb5_boolean KRB5_CALLCONV valid_enctype
|
566
|
+
(krb5_enctype ktype);
|
567
|
+
krb5_boolean KRB5_CALLCONV valid_cksumtype
|
568
|
+
(krb5_cksumtype ctype);
|
569
|
+
krb5_boolean KRB5_CALLCONV is_coll_proof_cksum
|
570
|
+
(krb5_cksumtype ctype);
|
571
|
+
krb5_boolean KRB5_CALLCONV is_keyed_cksum
|
572
|
+
(krb5_cksumtype ctype);
|
573
|
+
#endif
|
574
|
+
|
575
|
+
#ifdef KRB5_OLD_CRYPTO
|
576
|
+
/*
|
577
|
+
* old cryptosystem routine prototypes. These are now layered
|
578
|
+
* on top of the functions above.
|
579
|
+
*/
|
580
|
+
krb5_error_code KRB5_CALLCONV krb5_encrypt
|
581
|
+
(krb5_context context,
|
582
|
+
krb5_const_pointer inptr,
|
583
|
+
krb5_pointer outptr,
|
584
|
+
size_t size,
|
585
|
+
krb5_encrypt_block * eblock,
|
586
|
+
krb5_pointer ivec);
|
587
|
+
krb5_error_code KRB5_CALLCONV krb5_decrypt
|
588
|
+
(krb5_context context,
|
589
|
+
krb5_const_pointer inptr,
|
590
|
+
krb5_pointer outptr,
|
591
|
+
size_t size,
|
592
|
+
krb5_encrypt_block * eblock,
|
593
|
+
krb5_pointer ivec);
|
594
|
+
krb5_error_code KRB5_CALLCONV krb5_process_key
|
595
|
+
(krb5_context context,
|
596
|
+
krb5_encrypt_block * eblock,
|
597
|
+
const krb5_keyblock * key);
|
598
|
+
krb5_error_code KRB5_CALLCONV krb5_finish_key
|
599
|
+
(krb5_context context,
|
600
|
+
krb5_encrypt_block * eblock);
|
601
|
+
krb5_error_code KRB5_CALLCONV krb5_string_to_key
|
602
|
+
(krb5_context context,
|
603
|
+
const krb5_encrypt_block * eblock,
|
604
|
+
krb5_keyblock * keyblock,
|
605
|
+
const krb5_data * data,
|
606
|
+
const krb5_data * salt);
|
607
|
+
krb5_error_code KRB5_CALLCONV krb5_init_random_key
|
608
|
+
(krb5_context context,
|
609
|
+
const krb5_encrypt_block * eblock,
|
610
|
+
const krb5_keyblock * keyblock,
|
611
|
+
krb5_pointer * ptr);
|
612
|
+
krb5_error_code KRB5_CALLCONV krb5_finish_random_key
|
613
|
+
(krb5_context context,
|
614
|
+
const krb5_encrypt_block * eblock,
|
615
|
+
krb5_pointer * ptr);
|
616
|
+
krb5_error_code KRB5_CALLCONV krb5_random_key
|
617
|
+
(krb5_context context,
|
618
|
+
const krb5_encrypt_block * eblock,
|
619
|
+
krb5_pointer ptr,
|
620
|
+
krb5_keyblock ** keyblock);
|
621
|
+
krb5_enctype KRB5_CALLCONV krb5_eblock_enctype
|
622
|
+
(krb5_context context,
|
623
|
+
const krb5_encrypt_block * eblock);
|
624
|
+
krb5_error_code KRB5_CALLCONV krb5_use_enctype
|
625
|
+
(krb5_context context,
|
626
|
+
krb5_encrypt_block * eblock,
|
627
|
+
krb5_enctype enctype);
|
628
|
+
size_t KRB5_CALLCONV krb5_encrypt_size
|
629
|
+
(size_t length,
|
630
|
+
krb5_enctype crypto);
|
631
|
+
size_t KRB5_CALLCONV krb5_checksum_size
|
632
|
+
(krb5_context context,
|
633
|
+
krb5_cksumtype ctype);
|
634
|
+
krb5_error_code KRB5_CALLCONV krb5_calculate_checksum
|
635
|
+
(krb5_context context,
|
636
|
+
krb5_cksumtype ctype,
|
637
|
+
krb5_const_pointer in, size_t in_length,
|
638
|
+
krb5_const_pointer seed, size_t seed_length,
|
639
|
+
krb5_checksum * outcksum);
|
640
|
+
krb5_error_code KRB5_CALLCONV krb5_verify_checksum
|
641
|
+
(krb5_context context,
|
642
|
+
krb5_cksumtype ctype,
|
643
|
+
const krb5_checksum * cksum,
|
644
|
+
krb5_const_pointer in, size_t in_length,
|
645
|
+
krb5_const_pointer seed, size_t seed_length);
|
646
|
+
|
647
|
+
#if KRB5_PRIVATE
|
648
|
+
krb5_error_code KRB5_CALLCONV krb5_random_confounder
|
649
|
+
(size_t, krb5_pointer);
|
650
|
+
|
651
|
+
krb5_error_code krb5_encrypt_data
|
652
|
+
(krb5_context context, krb5_keyblock *key,
|
653
|
+
krb5_pointer ivec, krb5_data *data,
|
654
|
+
krb5_enc_data *enc_data);
|
655
|
+
|
656
|
+
krb5_error_code krb5_decrypt_data
|
657
|
+
(krb5_context context, krb5_keyblock *key,
|
658
|
+
krb5_pointer ivec, krb5_enc_data *data,
|
659
|
+
krb5_data *enc_data);
|
660
|
+
#endif
|
661
|
+
|
662
|
+
#endif /* KRB5_OLD_CRYPTO */
|
663
|
+
|
664
|
+
/*
|
665
|
+
* end "encryption.h"
|
666
|
+
*/
|
667
|
+
|
668
|
+
/*
|
669
|
+
* begin "fieldbits.h"
|
670
|
+
*/
|
671
|
+
|
672
|
+
/* kdc_options for kdc_request */
|
673
|
+
/* options is 32 bits; each host is responsible to put the 4 bytes
|
674
|
+
representing these bits into net order before transmission */
|
675
|
+
/* #define KDC_OPT_RESERVED 0x80000000 */
|
676
|
+
#define KDC_OPT_FORWARDABLE 0x40000000
|
677
|
+
#define KDC_OPT_FORWARDED 0x20000000
|
678
|
+
#define KDC_OPT_PROXIABLE 0x10000000
|
679
|
+
#define KDC_OPT_PROXY 0x08000000
|
680
|
+
#define KDC_OPT_ALLOW_POSTDATE 0x04000000
|
681
|
+
#define KDC_OPT_POSTDATED 0x02000000
|
682
|
+
/* #define KDC_OPT_UNUSED 0x01000000 */
|
683
|
+
#define KDC_OPT_RENEWABLE 0x00800000
|
684
|
+
/* #define KDC_OPT_UNUSED 0x00400000 */
|
685
|
+
/* #define KDC_OPT_RESERVED 0x00200000 */
|
686
|
+
/* #define KDC_OPT_RESERVED 0x00100000 */
|
687
|
+
/* #define KDC_OPT_RESERVED 0x00080000 */
|
688
|
+
/* #define KDC_OPT_RESERVED 0x00040000 */
|
689
|
+
#define KDC_OPT_REQUEST_ANONYMOUS 0x00020000
|
690
|
+
/* #define KDC_OPT_RESERVED 0x00010000 */
|
691
|
+
/* #define KDC_OPT_RESERVED 0x00008000 */
|
692
|
+
/* #define KDC_OPT_RESERVED 0x00004000 */
|
693
|
+
/* #define KDC_OPT_RESERVED 0x00002000 */
|
694
|
+
/* #define KDC_OPT_RESERVED 0x00001000 */
|
695
|
+
/* #define KDC_OPT_RESERVED 0x00000800 */
|
696
|
+
/* #define KDC_OPT_RESERVED 0x00000400 */
|
697
|
+
/* #define KDC_OPT_RESERVED 0x00000200 */
|
698
|
+
/* #define KDC_OPT_RESERVED 0x00000100 */
|
699
|
+
/* #define KDC_OPT_RESERVED 0x00000080 */
|
700
|
+
/* #define KDC_OPT_RESERVED 0x00000040 */
|
701
|
+
#define KDC_OPT_DISABLE_TRANSITED_CHECK 0x00000020
|
702
|
+
#define KDC_OPT_RENEWABLE_OK 0x00000010
|
703
|
+
#define KDC_OPT_ENC_TKT_IN_SKEY 0x00000008
|
704
|
+
/* #define KDC_OPT_UNUSED 0x00000004 */
|
705
|
+
#define KDC_OPT_RENEW 0x00000002
|
706
|
+
#define KDC_OPT_VALIDATE 0x00000001
|
707
|
+
|
708
|
+
/*
|
709
|
+
* Mask of ticket flags in the TGT which should be converted into KDC
|
710
|
+
* options when using the TGT to get derivitive tickets.
|
711
|
+
*
|
712
|
+
* New mask = KDC_OPT_FORWARDABLE | KDC_OPT_PROXIABLE |
|
713
|
+
* KDC_OPT_ALLOW_POSTDATE | KDC_OPT_RENEWABLE
|
714
|
+
*/
|
715
|
+
#define KDC_TKT_COMMON_MASK 0x54800000
|
716
|
+
|
717
|
+
/* definitions for ap_options fields */
|
718
|
+
/* ap_options are 32 bits; each host is responsible to put the 4 bytes
|
719
|
+
representing these bits into net order before transmission */
|
720
|
+
#define AP_OPTS_RESERVED 0x80000000
|
721
|
+
#define AP_OPTS_USE_SESSION_KEY 0x40000000
|
722
|
+
#define AP_OPTS_MUTUAL_REQUIRED 0x20000000
|
723
|
+
/* #define AP_OPTS_RESERVED 0x10000000 */
|
724
|
+
/* #define AP_OPTS_RESERVED 0x08000000 */
|
725
|
+
/* #define AP_OPTS_RESERVED 0x04000000 */
|
726
|
+
/* #define AP_OPTS_RESERVED 0x02000000 */
|
727
|
+
/* #define AP_OPTS_RESERVED 0x01000000 */
|
728
|
+
/* #define AP_OPTS_RESERVED 0x00800000 */
|
729
|
+
/* #define AP_OPTS_RESERVED 0x00400000 */
|
730
|
+
/* #define AP_OPTS_RESERVED 0x00200000 */
|
731
|
+
/* #define AP_OPTS_RESERVED 0x00100000 */
|
732
|
+
/* #define AP_OPTS_RESERVED 0x00080000 */
|
733
|
+
/* #define AP_OPTS_RESERVED 0x00040000 */
|
734
|
+
/* #define AP_OPTS_RESERVED 0x00020000 */
|
735
|
+
/* #define AP_OPTS_RESERVED 0x00010000 */
|
736
|
+
/* #define AP_OPTS_RESERVED 0x00008000 */
|
737
|
+
/* #define AP_OPTS_RESERVED 0x00004000 */
|
738
|
+
/* #define AP_OPTS_RESERVED 0x00002000 */
|
739
|
+
/* #define AP_OPTS_RESERVED 0x00001000 */
|
740
|
+
/* #define AP_OPTS_RESERVED 0x00000800 */
|
741
|
+
/* #define AP_OPTS_RESERVED 0x00000400 */
|
742
|
+
/* #define AP_OPTS_RESERVED 0x00000200 */
|
743
|
+
/* #define AP_OPTS_RESERVED 0x00000100 */
|
744
|
+
/* #define AP_OPTS_RESERVED 0x00000080 */
|
745
|
+
/* #define AP_OPTS_RESERVED 0x00000040 */
|
746
|
+
/* #define AP_OPTS_RESERVED 0x00000020 */
|
747
|
+
/* #define AP_OPTS_RESERVED 0x00000010 */
|
748
|
+
/* #define AP_OPTS_RESERVED 0x00000008 */
|
749
|
+
/* #define AP_OPTS_RESERVED 0x00000004 */
|
750
|
+
/* #define AP_OPTS_RESERVED 0x00000002 */
|
751
|
+
#define AP_OPTS_USE_SUBKEY 0x00000001
|
752
|
+
|
753
|
+
#define AP_OPTS_WIRE_MASK 0xfffffff0
|
754
|
+
|
755
|
+
/* definitions for ad_type fields. */
|
756
|
+
#define AD_TYPE_RESERVED 0x8000
|
757
|
+
#define AD_TYPE_EXTERNAL 0x4000
|
758
|
+
#define AD_TYPE_REGISTERED 0x2000
|
759
|
+
|
760
|
+
#define AD_TYPE_FIELD_TYPE_MASK 0x1fff
|
761
|
+
|
762
|
+
/* Ticket flags */
|
763
|
+
/* flags are 32 bits; each host is responsible to put the 4 bytes
|
764
|
+
representing these bits into net order before transmission */
|
765
|
+
/* #define TKT_FLG_RESERVED 0x80000000 */
|
766
|
+
#define TKT_FLG_FORWARDABLE 0x40000000
|
767
|
+
#define TKT_FLG_FORWARDED 0x20000000
|
768
|
+
#define TKT_FLG_PROXIABLE 0x10000000
|
769
|
+
#define TKT_FLG_PROXY 0x08000000
|
770
|
+
#define TKT_FLG_MAY_POSTDATE 0x04000000
|
771
|
+
#define TKT_FLG_POSTDATED 0x02000000
|
772
|
+
#define TKT_FLG_INVALID 0x01000000
|
773
|
+
#define TKT_FLG_RENEWABLE 0x00800000
|
774
|
+
#define TKT_FLG_INITIAL 0x00400000
|
775
|
+
#define TKT_FLG_PRE_AUTH 0x00200000
|
776
|
+
#define TKT_FLG_HW_AUTH 0x00100000
|
777
|
+
#define TKT_FLG_TRANSIT_POLICY_CHECKED 0x00080000
|
778
|
+
#define TKT_FLG_OK_AS_DELEGATE 0x00040000
|
779
|
+
#define TKT_FLG_ANONYMOUS 0x00020000
|
780
|
+
/* #define TKT_FLG_RESERVED 0x00010000 */
|
781
|
+
/* #define TKT_FLG_RESERVED 0x00008000 */
|
782
|
+
/* #define TKT_FLG_RESERVED 0x00004000 */
|
783
|
+
/* #define TKT_FLG_RESERVED 0x00002000 */
|
784
|
+
/* #define TKT_FLG_RESERVED 0x00001000 */
|
785
|
+
/* #define TKT_FLG_RESERVED 0x00000800 */
|
786
|
+
/* #define TKT_FLG_RESERVED 0x00000400 */
|
787
|
+
/* #define TKT_FLG_RESERVED 0x00000200 */
|
788
|
+
/* #define TKT_FLG_RESERVED 0x00000100 */
|
789
|
+
/* #define TKT_FLG_RESERVED 0x00000080 */
|
790
|
+
/* #define TKT_FLG_RESERVED 0x00000040 */
|
791
|
+
/* #define TKT_FLG_RESERVED 0x00000020 */
|
792
|
+
/* #define TKT_FLG_RESERVED 0x00000010 */
|
793
|
+
/* #define TKT_FLG_RESERVED 0x00000008 */
|
794
|
+
/* #define TKT_FLG_RESERVED 0x00000004 */
|
795
|
+
/* #define TKT_FLG_RESERVED 0x00000002 */
|
796
|
+
/* #define TKT_FLG_RESERVED 0x00000001 */
|
797
|
+
|
798
|
+
/* definitions for lr_type fields. */
|
799
|
+
#define LR_TYPE_THIS_SERVER_ONLY 0x8000
|
800
|
+
|
801
|
+
#define LR_TYPE_INTERPRETATION_MASK 0x7fff
|
802
|
+
|
803
|
+
/* definitions for ad_type fields. */
|
804
|
+
#define AD_TYPE_EXTERNAL 0x4000
|
805
|
+
#define AD_TYPE_REGISTERED 0x2000
|
806
|
+
|
807
|
+
#define AD_TYPE_FIELD_TYPE_MASK 0x1fff
|
808
|
+
#define AD_TYPE_INTERNAL_MASK 0x3fff
|
809
|
+
|
810
|
+
/* definitions for msec direction bit for KRB_SAFE, KRB_PRIV */
|
811
|
+
#define MSEC_DIRBIT 0x8000
|
812
|
+
#define MSEC_VAL_MASK 0x7fff
|
813
|
+
|
814
|
+
/*
|
815
|
+
* end "fieldbits.h"
|
816
|
+
*/
|
817
|
+
|
818
|
+
/*
|
819
|
+
* begin "proto.h"
|
820
|
+
*/
|
821
|
+
|
822
|
+
/* Protocol version number */
|
823
|
+
#define KRB5_PVNO 5
|
824
|
+
|
825
|
+
/* Message types */
|
826
|
+
|
827
|
+
#define KRB5_AS_REQ ((krb5_msgtype)10) /* Req for initial authentication */
|
828
|
+
#define KRB5_AS_REP ((krb5_msgtype)11) /* Response to KRB_AS_REQ request */
|
829
|
+
#define KRB5_TGS_REQ ((krb5_msgtype)12) /* TGS request to server */
|
830
|
+
#define KRB5_TGS_REP ((krb5_msgtype)13) /* Response to KRB_TGS_REQ req */
|
831
|
+
#define KRB5_AP_REQ ((krb5_msgtype)14) /* application request to server */
|
832
|
+
#define KRB5_AP_REP ((krb5_msgtype)15) /* Response to KRB_AP_REQ_MUTUAL */
|
833
|
+
#define KRB5_SAFE ((krb5_msgtype)20) /* Safe application message */
|
834
|
+
#define KRB5_PRIV ((krb5_msgtype)21) /* Private application message */
|
835
|
+
#define KRB5_CRED ((krb5_msgtype)22) /* Credential forwarding message */
|
836
|
+
#define KRB5_ERROR ((krb5_msgtype)30) /* Error response */
|
837
|
+
|
838
|
+
/* LastReq types */
|
839
|
+
#define KRB5_LRQ_NONE 0
|
840
|
+
#define KRB5_LRQ_ALL_LAST_TGT 1
|
841
|
+
#define KRB5_LRQ_ONE_LAST_TGT (-1)
|
842
|
+
#define KRB5_LRQ_ALL_LAST_INITIAL 2
|
843
|
+
#define KRB5_LRQ_ONE_LAST_INITIAL (-2)
|
844
|
+
#define KRB5_LRQ_ALL_LAST_TGT_ISSUED 3
|
845
|
+
#define KRB5_LRQ_ONE_LAST_TGT_ISSUED (-3)
|
846
|
+
#define KRB5_LRQ_ALL_LAST_RENEWAL 4
|
847
|
+
#define KRB5_LRQ_ONE_LAST_RENEWAL (-4)
|
848
|
+
#define KRB5_LRQ_ALL_LAST_REQ 5
|
849
|
+
#define KRB5_LRQ_ONE_LAST_REQ (-5)
|
850
|
+
#define KRB5_LRQ_ALL_PW_EXPTIME 6
|
851
|
+
#define KRB5_LRQ_ONE_PW_EXPTIME (-6)
|
852
|
+
|
853
|
+
/* PADATA types */
|
854
|
+
#define KRB5_PADATA_NONE 0
|
855
|
+
#define KRB5_PADATA_AP_REQ 1
|
856
|
+
#define KRB5_PADATA_TGS_REQ KRB5_PADATA_AP_REQ
|
857
|
+
#define KRB5_PADATA_ENC_TIMESTAMP 2
|
858
|
+
#define KRB5_PADATA_PW_SALT 3
|
859
|
+
#if 0 /* Not used */
|
860
|
+
#define KRB5_PADATA_ENC_ENCKEY 4 /* Key encrypted within itself */
|
861
|
+
#endif
|
862
|
+
#define KRB5_PADATA_ENC_UNIX_TIME 5 /* timestamp encrypted in key */
|
863
|
+
#define KRB5_PADATA_ENC_SANDIA_SECURID 6 /* SecurId passcode */
|
864
|
+
#define KRB5_PADATA_SESAME 7 /* Sesame project */
|
865
|
+
#define KRB5_PADATA_OSF_DCE 8 /* OSF DCE */
|
866
|
+
#define KRB5_CYBERSAFE_SECUREID 9 /* Cybersafe */
|
867
|
+
#define KRB5_PADATA_AFS3_SALT 10 /* Cygnus */
|
868
|
+
#define KRB5_PADATA_ETYPE_INFO 11 /* Etype info for preauth */
|
869
|
+
#define KRB5_PADATA_SAM_CHALLENGE 12 /* draft challenge system */
|
870
|
+
#define KRB5_PADATA_SAM_RESPONSE 13 /* draft challenge system response */
|
871
|
+
#define KRB5_PADATA_PK_AS_REQ 14 /* PKINIT */
|
872
|
+
#define KRB5_PADATA_PK_AS_REP 15 /* PKINIT */
|
873
|
+
#define KRB5_PADATA_ETYPE_INFO2 19
|
874
|
+
#define KRB5_PADATA_SAM_CHALLENGE_2 30 /* draft challenge system, updated */
|
875
|
+
#define KRB5_PADATA_SAM_RESPONSE_2 31 /* draft challenge system, updated */
|
876
|
+
|
877
|
+
#define KRB5_SAM_USE_SAD_AS_KEY 0x80000000
|
878
|
+
#define KRB5_SAM_SEND_ENCRYPTED_SAD 0x40000000
|
879
|
+
#define KRB5_SAM_MUST_PK_ENCRYPT_SAD 0x20000000 /* currently must be zero */
|
880
|
+
|
881
|
+
/* Reserved for SPX pre-authentication. */
|
882
|
+
#define KRB5_PADATA_DASS 16
|
883
|
+
|
884
|
+
/* Transited encoding types */
|
885
|
+
#define KRB5_DOMAIN_X500_COMPRESS 1
|
886
|
+
|
887
|
+
/* alternate authentication types */
|
888
|
+
#define KRB5_ALTAUTH_ATT_CHALLENGE_RESPONSE 64
|
889
|
+
|
890
|
+
/* authorization data types */
|
891
|
+
#define KRB5_AUTHDATA_OSF_DCE 64
|
892
|
+
#define KRB5_AUTHDATA_SESAME 65
|
893
|
+
|
894
|
+
/* password change constants */
|
895
|
+
|
896
|
+
#define KRB5_KPASSWD_SUCCESS 0
|
897
|
+
#define KRB5_KPASSWD_MALFORMED 1
|
898
|
+
#define KRB5_KPASSWD_HARDERROR 2
|
899
|
+
#define KRB5_KPASSWD_AUTHERROR 3
|
900
|
+
#define KRB5_KPASSWD_SOFTERROR 4
|
901
|
+
/* These are Microsoft's extensions in RFC 3244, and it looks like
|
902
|
+
they'll become standardized, possibly with other additions. */
|
903
|
+
#define KRB5_KPASSWD_ACCESSDENIED 5 /* unused */
|
904
|
+
#define KRB5_KPASSWD_BAD_VERSION 6
|
905
|
+
#define KRB5_KPASSWD_INITIAL_FLAG_NEEDED 7 /* unused */
|
906
|
+
|
907
|
+
/*
|
908
|
+
* end "proto.h"
|
909
|
+
*/
|
910
|
+
|
911
|
+
/* Time set */
|
912
|
+
typedef struct _krb5_ticket_times {
|
913
|
+
krb5_timestamp authtime; /* XXX ? should ktime in KDC_REP == authtime
|
914
|
+
in ticket? otherwise client can't get this */
|
915
|
+
krb5_timestamp starttime; /* optional in ticket, if not present,
|
916
|
+
use authtime */
|
917
|
+
krb5_timestamp endtime;
|
918
|
+
krb5_timestamp renew_till;
|
919
|
+
} krb5_ticket_times;
|
920
|
+
|
921
|
+
/* structure for auth data */
|
922
|
+
typedef struct _krb5_authdata {
|
923
|
+
krb5_magic magic;
|
924
|
+
krb5_authdatatype ad_type;
|
925
|
+
unsigned int length;
|
926
|
+
krb5_octet *contents;
|
927
|
+
} krb5_authdata;
|
928
|
+
|
929
|
+
/* structure for transited encoding */
|
930
|
+
typedef struct _krb5_transited {
|
931
|
+
krb5_magic magic;
|
932
|
+
krb5_octet tr_type;
|
933
|
+
krb5_data tr_contents;
|
934
|
+
} krb5_transited;
|
935
|
+
|
936
|
+
typedef struct _krb5_enc_tkt_part {
|
937
|
+
krb5_magic magic;
|
938
|
+
/* to-be-encrypted portion */
|
939
|
+
krb5_flags flags; /* flags */
|
940
|
+
krb5_keyblock *session; /* session key: includes enctype */
|
941
|
+
krb5_principal client; /* client name/realm */
|
942
|
+
krb5_transited transited; /* list of transited realms */
|
943
|
+
krb5_ticket_times times; /* auth, start, end, renew_till */
|
944
|
+
krb5_address **caddrs; /* array of ptrs to addresses */
|
945
|
+
krb5_authdata **authorization_data; /* auth data */
|
946
|
+
} krb5_enc_tkt_part;
|
947
|
+
|
948
|
+
typedef struct _krb5_ticket {
|
949
|
+
krb5_magic magic;
|
950
|
+
/* cleartext portion */
|
951
|
+
krb5_principal server; /* server name/realm */
|
952
|
+
krb5_enc_data enc_part; /* encryption type, kvno, encrypted
|
953
|
+
encoding */
|
954
|
+
krb5_enc_tkt_part *enc_part2; /* ptr to decrypted version, if
|
955
|
+
available */
|
956
|
+
} krb5_ticket;
|
957
|
+
|
958
|
+
/* the unencrypted version */
|
959
|
+
typedef struct _krb5_authenticator {
|
960
|
+
krb5_magic magic;
|
961
|
+
krb5_principal client; /* client name/realm */
|
962
|
+
krb5_checksum *checksum; /* checksum, includes type, optional */
|
963
|
+
krb5_int32 cusec; /* client usec portion */
|
964
|
+
krb5_timestamp ctime; /* client sec portion */
|
965
|
+
krb5_keyblock *subkey; /* true session key, optional */
|
966
|
+
krb5_ui_4 seq_number; /* sequence #, optional */
|
967
|
+
krb5_authdata **authorization_data; /* New add by Ari, auth data */
|
968
|
+
} krb5_authenticator;
|
969
|
+
|
970
|
+
typedef struct _krb5_tkt_authent {
|
971
|
+
krb5_magic magic;
|
972
|
+
krb5_ticket *ticket;
|
973
|
+
krb5_authenticator *authenticator;
|
974
|
+
krb5_flags ap_options;
|
975
|
+
} krb5_tkt_authent;
|
976
|
+
|
977
|
+
/* credentials: Ticket, session key, etc. */
|
978
|
+
typedef struct _krb5_creds {
|
979
|
+
krb5_magic magic;
|
980
|
+
krb5_principal client; /* client's principal identifier */
|
981
|
+
krb5_principal server; /* server's principal identifier */
|
982
|
+
krb5_keyblock keyblock; /* session encryption key info */
|
983
|
+
krb5_ticket_times times; /* lifetime info */
|
984
|
+
krb5_boolean is_skey; /* true if ticket is encrypted in
|
985
|
+
another ticket's skey */
|
986
|
+
krb5_flags ticket_flags; /* flags in ticket */
|
987
|
+
krb5_address **addresses; /* addrs in ticket */
|
988
|
+
krb5_data ticket; /* ticket string itself */
|
989
|
+
krb5_data second_ticket; /* second ticket, if related to
|
990
|
+
ticket (via DUPLICATE-SKEY or
|
991
|
+
ENC-TKT-IN-SKEY) */
|
992
|
+
krb5_authdata **authdata; /* authorization data */
|
993
|
+
} krb5_creds;
|
994
|
+
|
995
|
+
/* Last request fields */
|
996
|
+
typedef struct _krb5_last_req_entry {
|
997
|
+
krb5_magic magic;
|
998
|
+
krb5_int32 lr_type;
|
999
|
+
krb5_timestamp value;
|
1000
|
+
} krb5_last_req_entry;
|
1001
|
+
|
1002
|
+
/* pre-authentication data */
|
1003
|
+
typedef struct _krb5_pa_data {
|
1004
|
+
krb5_magic magic;
|
1005
|
+
krb5_preauthtype pa_type;
|
1006
|
+
unsigned int length;
|
1007
|
+
krb5_octet *contents;
|
1008
|
+
} krb5_pa_data;
|
1009
|
+
|
1010
|
+
typedef struct _krb5_kdc_req {
|
1011
|
+
krb5_magic magic;
|
1012
|
+
krb5_msgtype msg_type; /* AS_REQ or TGS_REQ? */
|
1013
|
+
krb5_pa_data **padata; /* e.g. encoded AP_REQ */
|
1014
|
+
/* real body */
|
1015
|
+
krb5_flags kdc_options; /* requested options */
|
1016
|
+
krb5_principal client; /* includes realm; optional */
|
1017
|
+
krb5_principal server; /* includes realm (only used if no
|
1018
|
+
client) */
|
1019
|
+
krb5_timestamp from; /* requested starttime */
|
1020
|
+
krb5_timestamp till; /* requested endtime */
|
1021
|
+
krb5_timestamp rtime; /* (optional) requested renew_till */
|
1022
|
+
krb5_int32 nonce; /* nonce to match request/response */
|
1023
|
+
int nktypes; /* # of ktypes, must be positive */
|
1024
|
+
krb5_enctype *ktype; /* requested enctype(s) */
|
1025
|
+
krb5_address **addresses; /* requested addresses, optional */
|
1026
|
+
krb5_enc_data authorization_data; /* encrypted auth data; OPTIONAL */
|
1027
|
+
krb5_authdata **unenc_authdata; /* unencrypted auth data,
|
1028
|
+
if available */
|
1029
|
+
krb5_ticket **second_ticket;/* second ticket array; OPTIONAL */
|
1030
|
+
} krb5_kdc_req;
|
1031
|
+
|
1032
|
+
typedef struct _krb5_enc_kdc_rep_part {
|
1033
|
+
krb5_magic magic;
|
1034
|
+
/* encrypted part: */
|
1035
|
+
krb5_msgtype msg_type; /* krb5 message type */
|
1036
|
+
krb5_keyblock *session; /* session key */
|
1037
|
+
krb5_last_req_entry **last_req; /* array of ptrs to entries */
|
1038
|
+
krb5_int32 nonce; /* nonce from request */
|
1039
|
+
krb5_timestamp key_exp; /* expiration date */
|
1040
|
+
krb5_flags flags; /* ticket flags */
|
1041
|
+
krb5_ticket_times times; /* lifetime info */
|
1042
|
+
krb5_principal server; /* server's principal identifier */
|
1043
|
+
krb5_address **caddrs; /* array of ptrs to addresses,
|
1044
|
+
optional */
|
1045
|
+
} krb5_enc_kdc_rep_part;
|
1046
|
+
|
1047
|
+
typedef struct _krb5_kdc_rep {
|
1048
|
+
krb5_magic magic;
|
1049
|
+
/* cleartext part: */
|
1050
|
+
krb5_msgtype msg_type; /* AS_REP or KDC_REP? */
|
1051
|
+
krb5_pa_data **padata; /* preauthentication data from KDC */
|
1052
|
+
krb5_principal client; /* client's principal identifier */
|
1053
|
+
krb5_ticket *ticket; /* ticket */
|
1054
|
+
krb5_enc_data enc_part; /* encryption type, kvno, encrypted
|
1055
|
+
encoding */
|
1056
|
+
krb5_enc_kdc_rep_part *enc_part2;/* unencrypted version, if available */
|
1057
|
+
} krb5_kdc_rep;
|
1058
|
+
|
1059
|
+
/* error message structure */
|
1060
|
+
typedef struct _krb5_error {
|
1061
|
+
krb5_magic magic;
|
1062
|
+
/* some of these may be meaningless in certain contexts */
|
1063
|
+
krb5_timestamp ctime; /* client sec portion; optional */
|
1064
|
+
krb5_int32 cusec; /* client usec portion; optional */
|
1065
|
+
krb5_int32 susec; /* server usec portion */
|
1066
|
+
krb5_timestamp stime; /* server sec portion */
|
1067
|
+
krb5_ui_4 error; /* error code (protocol error #'s) */
|
1068
|
+
krb5_principal client; /* client's principal identifier;
|
1069
|
+
optional */
|
1070
|
+
krb5_principal server; /* server's principal identifier */
|
1071
|
+
krb5_data text; /* descriptive text */
|
1072
|
+
krb5_data e_data; /* additional error-describing data */
|
1073
|
+
} krb5_error;
|
1074
|
+
|
1075
|
+
typedef struct _krb5_ap_req {
|
1076
|
+
krb5_magic magic;
|
1077
|
+
krb5_flags ap_options; /* requested options */
|
1078
|
+
krb5_ticket *ticket; /* ticket */
|
1079
|
+
krb5_enc_data authenticator; /* authenticator (already encrypted) */
|
1080
|
+
} krb5_ap_req;
|
1081
|
+
|
1082
|
+
typedef struct _krb5_ap_rep {
|
1083
|
+
krb5_magic magic;
|
1084
|
+
krb5_enc_data enc_part;
|
1085
|
+
} krb5_ap_rep;
|
1086
|
+
|
1087
|
+
typedef struct _krb5_ap_rep_enc_part {
|
1088
|
+
krb5_magic magic;
|
1089
|
+
krb5_timestamp ctime; /* client time, seconds portion */
|
1090
|
+
krb5_int32 cusec; /* client time, microseconds portion */
|
1091
|
+
krb5_keyblock *subkey; /* true session key, optional */
|
1092
|
+
krb5_ui_4 seq_number; /* sequence #, optional */
|
1093
|
+
} krb5_ap_rep_enc_part;
|
1094
|
+
|
1095
|
+
typedef struct _krb5_response {
|
1096
|
+
krb5_magic magic;
|
1097
|
+
krb5_octet message_type;
|
1098
|
+
krb5_data response;
|
1099
|
+
krb5_int32 expected_nonce; /* The expected nonce for KDC_REP messages */
|
1100
|
+
krb5_timestamp request_time; /* When we made the request */
|
1101
|
+
} krb5_response;
|
1102
|
+
|
1103
|
+
typedef struct _krb5_cred_info {
|
1104
|
+
krb5_magic magic;
|
1105
|
+
krb5_keyblock *session; /* session key used to encrypt */
|
1106
|
+
/* ticket */
|
1107
|
+
krb5_principal client; /* client name/realm, optional */
|
1108
|
+
krb5_principal server; /* server name/realm, optional */
|
1109
|
+
krb5_flags flags; /* ticket flags, optional */
|
1110
|
+
krb5_ticket_times times; /* auth, start, end, renew_till, */
|
1111
|
+
/* optional */
|
1112
|
+
krb5_address **caddrs; /* array of ptrs to addresses */
|
1113
|
+
} krb5_cred_info;
|
1114
|
+
|
1115
|
+
typedef struct _krb5_cred_enc_part {
|
1116
|
+
krb5_magic magic;
|
1117
|
+
krb5_int32 nonce; /* nonce, optional */
|
1118
|
+
krb5_timestamp timestamp; /* client time */
|
1119
|
+
krb5_int32 usec; /* microsecond portion of time */
|
1120
|
+
krb5_address *s_address; /* sender address, optional */
|
1121
|
+
krb5_address *r_address; /* recipient address, optional */
|
1122
|
+
krb5_cred_info **ticket_info;
|
1123
|
+
} krb5_cred_enc_part;
|
1124
|
+
|
1125
|
+
typedef struct _krb5_cred {
|
1126
|
+
krb5_magic magic;
|
1127
|
+
krb5_ticket **tickets; /* tickets */
|
1128
|
+
krb5_enc_data enc_part; /* encrypted part */
|
1129
|
+
krb5_cred_enc_part *enc_part2; /* unencrypted version, if available*/
|
1130
|
+
} krb5_cred;
|
1131
|
+
|
1132
|
+
/* Sandia password generation structures */
|
1133
|
+
typedef struct _passwd_phrase_element {
|
1134
|
+
krb5_magic magic;
|
1135
|
+
krb5_data *passwd;
|
1136
|
+
krb5_data *phrase;
|
1137
|
+
} passwd_phrase_element;
|
1138
|
+
|
1139
|
+
typedef struct _krb5_pwd_data {
|
1140
|
+
krb5_magic magic;
|
1141
|
+
int sequence_count;
|
1142
|
+
passwd_phrase_element **element;
|
1143
|
+
} krb5_pwd_data;
|
1144
|
+
|
1145
|
+
/* these need to be here so the typedefs are available for the prototypes */
|
1146
|
+
|
1147
|
+
/*
|
1148
|
+
* begin "safepriv.h"
|
1149
|
+
*/
|
1150
|
+
|
1151
|
+
#define KRB5_AUTH_CONTEXT_DO_TIME 0x00000001
|
1152
|
+
#define KRB5_AUTH_CONTEXT_RET_TIME 0x00000002
|
1153
|
+
#define KRB5_AUTH_CONTEXT_DO_SEQUENCE 0x00000004
|
1154
|
+
#define KRB5_AUTH_CONTEXT_RET_SEQUENCE 0x00000008
|
1155
|
+
#define KRB5_AUTH_CONTEXT_PERMIT_ALL 0x00000010
|
1156
|
+
#define KRB5_AUTH_CONTEXT_USE_SUBKEY 0x00000020
|
1157
|
+
|
1158
|
+
typedef struct krb5_replay_data {
|
1159
|
+
krb5_timestamp timestamp;
|
1160
|
+
krb5_int32 usec;
|
1161
|
+
krb5_ui_4 seq;
|
1162
|
+
} krb5_replay_data;
|
1163
|
+
|
1164
|
+
/* flags for krb5_auth_con_genaddrs() */
|
1165
|
+
#define KRB5_AUTH_CONTEXT_GENERATE_LOCAL_ADDR 0x00000001
|
1166
|
+
#define KRB5_AUTH_CONTEXT_GENERATE_REMOTE_ADDR 0x00000002
|
1167
|
+
#define KRB5_AUTH_CONTEXT_GENERATE_LOCAL_FULL_ADDR 0x00000004
|
1168
|
+
#define KRB5_AUTH_CONTEXT_GENERATE_REMOTE_FULL_ADDR 0x00000008
|
1169
|
+
|
1170
|
+
/* type of function used as a callback to generate checksum data for
|
1171
|
+
* mk_req */
|
1172
|
+
|
1173
|
+
typedef krb5_error_code
|
1174
|
+
(KRB5_CALLCONV * krb5_mk_req_checksum_func) (krb5_context, krb5_auth_context , void *,
|
1175
|
+
krb5_data **);
|
1176
|
+
|
1177
|
+
/*
|
1178
|
+
* end "safepriv.h"
|
1179
|
+
*/
|
1180
|
+
|
1181
|
+
|
1182
|
+
/*
|
1183
|
+
* begin "ccache.h"
|
1184
|
+
*/
|
1185
|
+
|
1186
|
+
typedef krb5_pointer krb5_cc_cursor; /* cursor for sequential lookup */
|
1187
|
+
|
1188
|
+
struct _krb5_ccache;
|
1189
|
+
typedef struct _krb5_ccache *krb5_ccache;
|
1190
|
+
struct _krb5_cc_ops;
|
1191
|
+
typedef struct _krb5_cc_ops krb5_cc_ops;
|
1192
|
+
|
1193
|
+
/* for retrieve_cred */
|
1194
|
+
#define KRB5_TC_MATCH_TIMES 0x00000001
|
1195
|
+
#define KRB5_TC_MATCH_IS_SKEY 0x00000002
|
1196
|
+
#define KRB5_TC_MATCH_FLAGS 0x00000004
|
1197
|
+
#define KRB5_TC_MATCH_TIMES_EXACT 0x00000008
|
1198
|
+
#define KRB5_TC_MATCH_FLAGS_EXACT 0x00000010
|
1199
|
+
#define KRB5_TC_MATCH_AUTHDATA 0x00000020
|
1200
|
+
#define KRB5_TC_MATCH_SRV_NAMEONLY 0x00000040
|
1201
|
+
#define KRB5_TC_MATCH_2ND_TKT 0x00000080
|
1202
|
+
#define KRB5_TC_MATCH_KTYPE 0x00000100
|
1203
|
+
#define KRB5_TC_SUPPORTED_KTYPES 0x00000200
|
1204
|
+
|
1205
|
+
/* for set_flags and other functions */
|
1206
|
+
#define KRB5_TC_OPENCLOSE 0x00000001
|
1207
|
+
#define KRB5_TC_NOTICKET 0x00000002
|
1208
|
+
|
1209
|
+
const char * KRB5_CALLCONV
|
1210
|
+
krb5_cc_get_name (krb5_context context, krb5_ccache cache);
|
1211
|
+
|
1212
|
+
krb5_error_code KRB5_CALLCONV
|
1213
|
+
krb5_cc_gen_new (krb5_context context, krb5_ccache *cache);
|
1214
|
+
|
1215
|
+
krb5_error_code KRB5_CALLCONV
|
1216
|
+
krb5_cc_initialize(krb5_context context, krb5_ccache cache,
|
1217
|
+
krb5_principal principal);
|
1218
|
+
|
1219
|
+
krb5_error_code KRB5_CALLCONV
|
1220
|
+
krb5_cc_destroy (krb5_context context, krb5_ccache cache);
|
1221
|
+
|
1222
|
+
krb5_error_code KRB5_CALLCONV
|
1223
|
+
krb5_cc_close (krb5_context context, krb5_ccache cache);
|
1224
|
+
|
1225
|
+
krb5_error_code KRB5_CALLCONV
|
1226
|
+
krb5_cc_store_cred (krb5_context context, krb5_ccache cache,
|
1227
|
+
krb5_creds *creds);
|
1228
|
+
|
1229
|
+
krb5_error_code KRB5_CALLCONV
|
1230
|
+
krb5_cc_retrieve_cred (krb5_context context, krb5_ccache cache,
|
1231
|
+
krb5_flags flags, krb5_creds *mcreds,
|
1232
|
+
krb5_creds *creds);
|
1233
|
+
|
1234
|
+
krb5_error_code KRB5_CALLCONV
|
1235
|
+
krb5_cc_get_principal (krb5_context context, krb5_ccache cache,
|
1236
|
+
krb5_principal *principal);
|
1237
|
+
|
1238
|
+
krb5_error_code KRB5_CALLCONV
|
1239
|
+
krb5_cc_start_seq_get (krb5_context context, krb5_ccache cache,
|
1240
|
+
krb5_cc_cursor *cursor);
|
1241
|
+
|
1242
|
+
krb5_error_code KRB5_CALLCONV
|
1243
|
+
krb5_cc_next_cred (krb5_context context, krb5_ccache cache,
|
1244
|
+
krb5_cc_cursor *cursor, krb5_creds *creds);
|
1245
|
+
|
1246
|
+
krb5_error_code KRB5_CALLCONV
|
1247
|
+
krb5_cc_end_seq_get (krb5_context context, krb5_ccache cache,
|
1248
|
+
krb5_cc_cursor *cursor);
|
1249
|
+
|
1250
|
+
krb5_error_code KRB5_CALLCONV
|
1251
|
+
krb5_cc_remove_cred (krb5_context context, krb5_ccache cache, krb5_flags flags,
|
1252
|
+
krb5_creds *creds);
|
1253
|
+
|
1254
|
+
krb5_error_code KRB5_CALLCONV
|
1255
|
+
krb5_cc_set_flags (krb5_context context, krb5_ccache cache, krb5_flags flags);
|
1256
|
+
|
1257
|
+
const char * KRB5_CALLCONV
|
1258
|
+
krb5_cc_get_type (krb5_context context, krb5_ccache cache);
|
1259
|
+
|
1260
|
+
/*
|
1261
|
+
* end "ccache.h"
|
1262
|
+
*/
|
1263
|
+
|
1264
|
+
/*
|
1265
|
+
* begin "rcache.h"
|
1266
|
+
*/
|
1267
|
+
|
1268
|
+
struct krb5_rc_st;
|
1269
|
+
typedef struct krb5_rc_st *krb5_rcache;
|
1270
|
+
|
1271
|
+
/*
|
1272
|
+
* end "rcache.h"
|
1273
|
+
*/
|
1274
|
+
|
1275
|
+
/*
|
1276
|
+
* begin "keytab.h"
|
1277
|
+
*/
|
1278
|
+
|
1279
|
+
|
1280
|
+
/* XXX */
|
1281
|
+
#define MAX_KEYTAB_NAME_LEN 1100 /* Long enough for MAXPATHLEN + some extra */
|
1282
|
+
|
1283
|
+
typedef krb5_pointer krb5_kt_cursor; /* XXX */
|
1284
|
+
|
1285
|
+
typedef struct krb5_keytab_entry_st {
|
1286
|
+
krb5_magic magic;
|
1287
|
+
krb5_principal principal; /* principal of this key */
|
1288
|
+
krb5_timestamp timestamp; /* time entry written to keytable */
|
1289
|
+
krb5_kvno vno; /* key version number */
|
1290
|
+
krb5_keyblock key; /* the secret key */
|
1291
|
+
} krb5_keytab_entry;
|
1292
|
+
|
1293
|
+
#if KRB5_PRIVATE
|
1294
|
+
struct _krb5_kt_ops;
|
1295
|
+
typedef struct _krb5_kt { /* should move into k5-int.h */
|
1296
|
+
krb5_magic magic;
|
1297
|
+
const struct _krb5_kt_ops *ops;
|
1298
|
+
krb5_pointer data;
|
1299
|
+
} *krb5_keytab;
|
1300
|
+
#else
|
1301
|
+
struct _krb5_kt;
|
1302
|
+
typedef struct _krb5_kt *krb5_keytab;
|
1303
|
+
#endif
|
1304
|
+
|
1305
|
+
char * KRB5_CALLCONV
|
1306
|
+
krb5_kt_get_type (krb5_context, krb5_keytab keytab);
|
1307
|
+
krb5_error_code KRB5_CALLCONV
|
1308
|
+
krb5_kt_get_name(krb5_context context, krb5_keytab keytab, char *name,
|
1309
|
+
unsigned int namelen);
|
1310
|
+
krb5_error_code KRB5_CALLCONV
|
1311
|
+
krb5_kt_close(krb5_context context, krb5_keytab keytab);
|
1312
|
+
krb5_error_code KRB5_CALLCONV
|
1313
|
+
krb5_kt_get_entry(krb5_context context, krb5_keytab keytab,
|
1314
|
+
krb5_const_principal principal, krb5_kvno vno,
|
1315
|
+
krb5_enctype enctype, krb5_keytab_entry *entry);
|
1316
|
+
krb5_error_code KRB5_CALLCONV
|
1317
|
+
krb5_kt_start_seq_get(krb5_context context, krb5_keytab keytab,
|
1318
|
+
krb5_kt_cursor *cursor);
|
1319
|
+
krb5_error_code KRB5_CALLCONV
|
1320
|
+
krb5_kt_next_entry(krb5_context context, krb5_keytab keytab,
|
1321
|
+
krb5_keytab_entry *entry, krb5_kt_cursor *cursor);
|
1322
|
+
krb5_error_code KRB5_CALLCONV
|
1323
|
+
krb5_kt_end_seq_get(krb5_context context, krb5_keytab keytab,
|
1324
|
+
krb5_kt_cursor *cursor);
|
1325
|
+
|
1326
|
+
/*
|
1327
|
+
* end "keytab.h"
|
1328
|
+
*/
|
1329
|
+
|
1330
|
+
/*
|
1331
|
+
* begin "func-proto.h"
|
1332
|
+
*/
|
1333
|
+
|
1334
|
+
krb5_error_code KRB5_CALLCONV krb5_init_context
|
1335
|
+
(krb5_context *);
|
1336
|
+
krb5_error_code KRB5_CALLCONV krb5_init_secure_context
|
1337
|
+
(krb5_context *);
|
1338
|
+
void KRB5_CALLCONV krb5_free_context
|
1339
|
+
(krb5_context);
|
1340
|
+
|
1341
|
+
#if KRB5_PRIVATE
|
1342
|
+
krb5_error_code krb5_set_default_in_tkt_ktypes
|
1343
|
+
(krb5_context,
|
1344
|
+
const krb5_enctype *);
|
1345
|
+
krb5_error_code krb5_get_default_in_tkt_ktypes
|
1346
|
+
(krb5_context,
|
1347
|
+
krb5_enctype **);
|
1348
|
+
|
1349
|
+
krb5_error_code krb5_set_default_tgs_ktypes
|
1350
|
+
(krb5_context,
|
1351
|
+
const krb5_enctype *);
|
1352
|
+
#endif
|
1353
|
+
|
1354
|
+
krb5_error_code KRB5_CALLCONV
|
1355
|
+
krb5_set_default_tgs_enctypes
|
1356
|
+
(krb5_context,
|
1357
|
+
const krb5_enctype *);
|
1358
|
+
#if KRB5_PRIVATE
|
1359
|
+
krb5_error_code KRB5_CALLCONV krb5_get_tgs_ktypes
|
1360
|
+
(krb5_context,
|
1361
|
+
krb5_const_principal,
|
1362
|
+
krb5_enctype **);
|
1363
|
+
#endif
|
1364
|
+
|
1365
|
+
krb5_error_code KRB5_CALLCONV krb5_get_permitted_enctypes
|
1366
|
+
(krb5_context, krb5_enctype **);
|
1367
|
+
|
1368
|
+
#if KRB5_PRIVATE
|
1369
|
+
void KRB5_CALLCONV krb5_free_ktypes
|
1370
|
+
(krb5_context, krb5_enctype *);
|
1371
|
+
|
1372
|
+
krb5_boolean krb5_is_permitted_enctype
|
1373
|
+
(krb5_context, krb5_enctype);
|
1374
|
+
#endif
|
1375
|
+
|
1376
|
+
krb5_boolean KRB5_CALLCONV krb5_is_thread_safe(void);
|
1377
|
+
|
1378
|
+
/* libkrb.spec */
|
1379
|
+
#if KRB5_PRIVATE
|
1380
|
+
krb5_error_code krb5_kdc_rep_decrypt_proc
|
1381
|
+
(krb5_context,
|
1382
|
+
const krb5_keyblock *,
|
1383
|
+
krb5_const_pointer,
|
1384
|
+
krb5_kdc_rep * );
|
1385
|
+
krb5_error_code KRB5_CALLCONV krb5_decrypt_tkt_part
|
1386
|
+
(krb5_context,
|
1387
|
+
const krb5_keyblock *,
|
1388
|
+
krb5_ticket * );
|
1389
|
+
krb5_error_code krb5_get_cred_from_kdc
|
1390
|
+
(krb5_context,
|
1391
|
+
krb5_ccache, /* not const, as reading may save
|
1392
|
+
state */
|
1393
|
+
krb5_creds *,
|
1394
|
+
krb5_creds **,
|
1395
|
+
krb5_creds *** );
|
1396
|
+
krb5_error_code krb5_get_cred_from_kdc_validate
|
1397
|
+
(krb5_context,
|
1398
|
+
krb5_ccache, /* not const, as reading may save
|
1399
|
+
state */
|
1400
|
+
krb5_creds *,
|
1401
|
+
krb5_creds **,
|
1402
|
+
krb5_creds *** );
|
1403
|
+
krb5_error_code krb5_get_cred_from_kdc_renew
|
1404
|
+
(krb5_context,
|
1405
|
+
krb5_ccache, /* not const, as reading may save
|
1406
|
+
state */
|
1407
|
+
krb5_creds *,
|
1408
|
+
krb5_creds **,
|
1409
|
+
krb5_creds *** );
|
1410
|
+
#endif
|
1411
|
+
|
1412
|
+
void KRB5_CALLCONV krb5_free_tgt_creds
|
1413
|
+
(krb5_context,
|
1414
|
+
krb5_creds **); /* XXX too hard to do with const */
|
1415
|
+
|
1416
|
+
#define KRB5_GC_USER_USER 1 /* want user-user ticket */
|
1417
|
+
#define KRB5_GC_CACHED 2 /* want cached ticket only */
|
1418
|
+
|
1419
|
+
krb5_error_code KRB5_CALLCONV krb5_get_credentials
|
1420
|
+
(krb5_context,
|
1421
|
+
krb5_flags,
|
1422
|
+
krb5_ccache,
|
1423
|
+
krb5_creds *,
|
1424
|
+
krb5_creds **);
|
1425
|
+
krb5_error_code KRB5_CALLCONV krb5_get_credentials_validate
|
1426
|
+
(krb5_context,
|
1427
|
+
krb5_flags,
|
1428
|
+
krb5_ccache,
|
1429
|
+
krb5_creds *,
|
1430
|
+
krb5_creds **);
|
1431
|
+
krb5_error_code KRB5_CALLCONV krb5_get_credentials_renew
|
1432
|
+
(krb5_context,
|
1433
|
+
krb5_flags,
|
1434
|
+
krb5_ccache,
|
1435
|
+
krb5_creds *,
|
1436
|
+
krb5_creds **);
|
1437
|
+
#if KRB5_PRIVATE
|
1438
|
+
krb5_error_code krb5_get_cred_via_tkt
|
1439
|
+
(krb5_context,
|
1440
|
+
krb5_creds *,
|
1441
|
+
krb5_flags,
|
1442
|
+
krb5_address * const *,
|
1443
|
+
krb5_creds *,
|
1444
|
+
krb5_creds **);
|
1445
|
+
#endif
|
1446
|
+
krb5_error_code KRB5_CALLCONV krb5_mk_req
|
1447
|
+
(krb5_context,
|
1448
|
+
krb5_auth_context *,
|
1449
|
+
krb5_flags,
|
1450
|
+
char *,
|
1451
|
+
char *,
|
1452
|
+
krb5_data *,
|
1453
|
+
krb5_ccache,
|
1454
|
+
krb5_data * );
|
1455
|
+
krb5_error_code KRB5_CALLCONV krb5_mk_req_extended
|
1456
|
+
(krb5_context,
|
1457
|
+
krb5_auth_context *,
|
1458
|
+
krb5_flags,
|
1459
|
+
krb5_data *,
|
1460
|
+
krb5_creds *,
|
1461
|
+
krb5_data * );
|
1462
|
+
krb5_error_code KRB5_CALLCONV krb5_mk_rep
|
1463
|
+
(krb5_context,
|
1464
|
+
krb5_auth_context,
|
1465
|
+
krb5_data *);
|
1466
|
+
krb5_error_code KRB5_CALLCONV krb5_rd_rep
|
1467
|
+
(krb5_context,
|
1468
|
+
krb5_auth_context,
|
1469
|
+
const krb5_data *,
|
1470
|
+
krb5_ap_rep_enc_part **);
|
1471
|
+
krb5_error_code KRB5_CALLCONV krb5_mk_error
|
1472
|
+
(krb5_context,
|
1473
|
+
const krb5_error *,
|
1474
|
+
krb5_data * );
|
1475
|
+
krb5_error_code KRB5_CALLCONV krb5_rd_error
|
1476
|
+
(krb5_context,
|
1477
|
+
const krb5_data *,
|
1478
|
+
krb5_error ** );
|
1479
|
+
krb5_error_code KRB5_CALLCONV krb5_rd_safe
|
1480
|
+
(krb5_context,
|
1481
|
+
krb5_auth_context,
|
1482
|
+
const krb5_data *,
|
1483
|
+
krb5_data *,
|
1484
|
+
krb5_replay_data *);
|
1485
|
+
krb5_error_code KRB5_CALLCONV krb5_rd_priv
|
1486
|
+
(krb5_context,
|
1487
|
+
krb5_auth_context,
|
1488
|
+
const krb5_data *,
|
1489
|
+
krb5_data *,
|
1490
|
+
krb5_replay_data *);
|
1491
|
+
krb5_error_code KRB5_CALLCONV krb5_parse_name
|
1492
|
+
(krb5_context,
|
1493
|
+
const char *,
|
1494
|
+
krb5_principal * );
|
1495
|
+
krb5_error_code KRB5_CALLCONV krb5_unparse_name
|
1496
|
+
(krb5_context,
|
1497
|
+
krb5_const_principal,
|
1498
|
+
char ** );
|
1499
|
+
krb5_error_code KRB5_CALLCONV krb5_unparse_name_ext
|
1500
|
+
(krb5_context,
|
1501
|
+
krb5_const_principal,
|
1502
|
+
char **,
|
1503
|
+
unsigned int *);
|
1504
|
+
|
1505
|
+
krb5_error_code KRB5_CALLCONV krb5_set_principal_realm
|
1506
|
+
(krb5_context, krb5_principal, const char *);
|
1507
|
+
|
1508
|
+
krb5_boolean KRB5_CALLCONV_WRONG krb5_address_search
|
1509
|
+
(krb5_context,
|
1510
|
+
const krb5_address *,
|
1511
|
+
krb5_address * const *);
|
1512
|
+
krb5_boolean KRB5_CALLCONV krb5_address_compare
|
1513
|
+
(krb5_context,
|
1514
|
+
const krb5_address *,
|
1515
|
+
const krb5_address *);
|
1516
|
+
int KRB5_CALLCONV krb5_address_order
|
1517
|
+
(krb5_context,
|
1518
|
+
const krb5_address *,
|
1519
|
+
const krb5_address *);
|
1520
|
+
krb5_boolean KRB5_CALLCONV krb5_realm_compare
|
1521
|
+
(krb5_context,
|
1522
|
+
krb5_const_principal,
|
1523
|
+
krb5_const_principal);
|
1524
|
+
krb5_boolean KRB5_CALLCONV krb5_principal_compare
|
1525
|
+
(krb5_context,
|
1526
|
+
krb5_const_principal,
|
1527
|
+
krb5_const_principal);
|
1528
|
+
krb5_error_code KRB5_CALLCONV krb5_init_keyblock
|
1529
|
+
(krb5_context, krb5_enctype enctype,
|
1530
|
+
size_t length, krb5_keyblock **out);
|
1531
|
+
/* Initialize a new keyblock and allocate storage
|
1532
|
+
* for the contents of the key, which will be freed along
|
1533
|
+
* with the keyblock when krb5_free_keyblock is called.
|
1534
|
+
* It is legal to pass in a length of 0, in which
|
1535
|
+
* case contents are left unallocated.
|
1536
|
+
*/
|
1537
|
+
krb5_error_code KRB5_CALLCONV krb5_copy_keyblock
|
1538
|
+
(krb5_context,
|
1539
|
+
const krb5_keyblock *,
|
1540
|
+
krb5_keyblock **);
|
1541
|
+
krb5_error_code KRB5_CALLCONV krb5_copy_keyblock_contents
|
1542
|
+
(krb5_context,
|
1543
|
+
const krb5_keyblock *,
|
1544
|
+
krb5_keyblock *);
|
1545
|
+
krb5_error_code KRB5_CALLCONV krb5_copy_creds
|
1546
|
+
(krb5_context,
|
1547
|
+
const krb5_creds *,
|
1548
|
+
krb5_creds **);
|
1549
|
+
krb5_error_code KRB5_CALLCONV krb5_copy_data
|
1550
|
+
(krb5_context,
|
1551
|
+
const krb5_data *,
|
1552
|
+
krb5_data **);
|
1553
|
+
krb5_error_code KRB5_CALLCONV krb5_copy_principal
|
1554
|
+
(krb5_context,
|
1555
|
+
krb5_const_principal,
|
1556
|
+
krb5_principal *);
|
1557
|
+
#if KRB5_PRIVATE
|
1558
|
+
krb5_error_code KRB5_CALLCONV krb5_copy_addr
|
1559
|
+
(krb5_context,
|
1560
|
+
const krb5_address *,
|
1561
|
+
krb5_address **);
|
1562
|
+
#endif
|
1563
|
+
krb5_error_code KRB5_CALLCONV krb5_copy_addresses
|
1564
|
+
(krb5_context,
|
1565
|
+
krb5_address * const *,
|
1566
|
+
krb5_address ***);
|
1567
|
+
krb5_error_code KRB5_CALLCONV krb5_copy_ticket
|
1568
|
+
(krb5_context,
|
1569
|
+
const krb5_ticket *,
|
1570
|
+
krb5_ticket **);
|
1571
|
+
krb5_error_code KRB5_CALLCONV krb5_copy_authdata
|
1572
|
+
(krb5_context,
|
1573
|
+
krb5_authdata * const *,
|
1574
|
+
krb5_authdata ***);
|
1575
|
+
krb5_error_code KRB5_CALLCONV krb5_copy_authenticator
|
1576
|
+
(krb5_context,
|
1577
|
+
const krb5_authenticator *,
|
1578
|
+
krb5_authenticator **);
|
1579
|
+
krb5_error_code KRB5_CALLCONV krb5_copy_checksum
|
1580
|
+
(krb5_context,
|
1581
|
+
const krb5_checksum *,
|
1582
|
+
krb5_checksum **);
|
1583
|
+
#if KRB5_PRIVATE
|
1584
|
+
void krb5_init_ets
|
1585
|
+
(krb5_context);
|
1586
|
+
void krb5_free_ets
|
1587
|
+
(krb5_context);
|
1588
|
+
krb5_error_code krb5_generate_subkey
|
1589
|
+
(krb5_context,
|
1590
|
+
const krb5_keyblock *, krb5_keyblock **);
|
1591
|
+
krb5_error_code krb5_generate_seq_number
|
1592
|
+
(krb5_context,
|
1593
|
+
const krb5_keyblock *, krb5_ui_4 *);
|
1594
|
+
#endif
|
1595
|
+
krb5_error_code KRB5_CALLCONV krb5_get_server_rcache
|
1596
|
+
(krb5_context,
|
1597
|
+
const krb5_data *, krb5_rcache *);
|
1598
|
+
krb5_error_code KRB5_CALLCONV_C krb5_build_principal_ext
|
1599
|
+
(krb5_context, krb5_principal *, unsigned int, const char *, ...);
|
1600
|
+
krb5_error_code KRB5_CALLCONV_C krb5_build_principal
|
1601
|
+
(krb5_context, krb5_principal *, unsigned int, const char *, ...);
|
1602
|
+
#ifdef va_start
|
1603
|
+
/* XXX depending on varargs include file defining va_start... */
|
1604
|
+
krb5_error_code KRB5_CALLCONV krb5_build_principal_va
|
1605
|
+
(krb5_context,
|
1606
|
+
krb5_principal, unsigned int, const char *, va_list);
|
1607
|
+
#endif
|
1608
|
+
|
1609
|
+
krb5_error_code KRB5_CALLCONV krb5_425_conv_principal
|
1610
|
+
(krb5_context,
|
1611
|
+
const char *name,
|
1612
|
+
const char *instance, const char *realm,
|
1613
|
+
krb5_principal *princ);
|
1614
|
+
|
1615
|
+
krb5_error_code KRB5_CALLCONV krb5_524_conv_principal
|
1616
|
+
(krb5_context context, krb5_const_principal princ,
|
1617
|
+
char *name, char *inst, char *realm);
|
1618
|
+
|
1619
|
+
struct credentials;
|
1620
|
+
int KRB5_CALLCONV krb5_524_convert_creds
|
1621
|
+
(krb5_context context, krb5_creds *v5creds,
|
1622
|
+
struct credentials *v4creds);
|
1623
|
+
#if KRB5_DEPRECATED
|
1624
|
+
#define krb524_convert_creds_kdc krb5_524_convert_creds
|
1625
|
+
#define krb524_init_ets(x) (0)
|
1626
|
+
#endif
|
1627
|
+
|
1628
|
+
/* libkt.spec */
|
1629
|
+
#if KRB5_PRIVATE
|
1630
|
+
krb5_error_code KRB5_CALLCONV krb5_kt_register
|
1631
|
+
(krb5_context,
|
1632
|
+
const struct _krb5_kt_ops * );
|
1633
|
+
#endif
|
1634
|
+
|
1635
|
+
krb5_error_code KRB5_CALLCONV krb5_kt_resolve
|
1636
|
+
(krb5_context,
|
1637
|
+
const char *,
|
1638
|
+
krb5_keytab * );
|
1639
|
+
krb5_error_code KRB5_CALLCONV krb5_kt_default_name
|
1640
|
+
(krb5_context,
|
1641
|
+
char *,
|
1642
|
+
int );
|
1643
|
+
krb5_error_code KRB5_CALLCONV krb5_kt_default
|
1644
|
+
(krb5_context,
|
1645
|
+
krb5_keytab * );
|
1646
|
+
krb5_error_code KRB5_CALLCONV krb5_free_keytab_entry_contents
|
1647
|
+
(krb5_context,
|
1648
|
+
krb5_keytab_entry * );
|
1649
|
+
#if KRB5_PRIVATE
|
1650
|
+
/* use krb5_free_keytab_entry_contents instead */
|
1651
|
+
krb5_error_code KRB5_CALLCONV krb5_kt_free_entry
|
1652
|
+
(krb5_context,
|
1653
|
+
krb5_keytab_entry * );
|
1654
|
+
#endif
|
1655
|
+
/* remove and add are functions, so that they can return NOWRITE
|
1656
|
+
if not a writable keytab */
|
1657
|
+
krb5_error_code KRB5_CALLCONV krb5_kt_remove_entry
|
1658
|
+
(krb5_context,
|
1659
|
+
krb5_keytab,
|
1660
|
+
krb5_keytab_entry * );
|
1661
|
+
krb5_error_code KRB5_CALLCONV krb5_kt_add_entry
|
1662
|
+
(krb5_context,
|
1663
|
+
krb5_keytab,
|
1664
|
+
krb5_keytab_entry * );
|
1665
|
+
krb5_error_code KRB5_CALLCONV_WRONG krb5_principal2salt
|
1666
|
+
(krb5_context,
|
1667
|
+
krb5_const_principal, krb5_data *);
|
1668
|
+
#if KRB5_PRIVATE
|
1669
|
+
krb5_error_code krb5_principal2salt_norealm
|
1670
|
+
(krb5_context,
|
1671
|
+
krb5_const_principal, krb5_data *);
|
1672
|
+
#endif
|
1673
|
+
/* librc.spec--see rcache.h */
|
1674
|
+
|
1675
|
+
/* libcc.spec */
|
1676
|
+
krb5_error_code KRB5_CALLCONV krb5_cc_resolve
|
1677
|
+
(krb5_context,
|
1678
|
+
const char *,
|
1679
|
+
krb5_ccache * );
|
1680
|
+
const char * KRB5_CALLCONV krb5_cc_default_name
|
1681
|
+
(krb5_context);
|
1682
|
+
krb5_error_code KRB5_CALLCONV krb5_cc_set_default_name
|
1683
|
+
(krb5_context, const char *);
|
1684
|
+
krb5_error_code KRB5_CALLCONV krb5_cc_default
|
1685
|
+
(krb5_context,
|
1686
|
+
krb5_ccache *);
|
1687
|
+
#if KRB5_PRIVATE
|
1688
|
+
unsigned int KRB5_CALLCONV krb5_get_notification_message
|
1689
|
+
(void);
|
1690
|
+
#endif
|
1691
|
+
|
1692
|
+
krb5_error_code KRB5_CALLCONV krb5_cc_copy_creds
|
1693
|
+
(krb5_context context,
|
1694
|
+
krb5_ccache incc,
|
1695
|
+
krb5_ccache outcc);
|
1696
|
+
|
1697
|
+
|
1698
|
+
/* chk_trans.c */
|
1699
|
+
#if KRB5_PRIVATE
|
1700
|
+
krb5_error_code krb5_check_transited_list
|
1701
|
+
(krb5_context, const krb5_data *trans,
|
1702
|
+
const krb5_data *realm1, const krb5_data *realm2);
|
1703
|
+
#endif
|
1704
|
+
|
1705
|
+
/* free_rtree.c */
|
1706
|
+
#if KRB5_PRIVATE
|
1707
|
+
void krb5_free_realm_tree
|
1708
|
+
(krb5_context,
|
1709
|
+
krb5_principal *);
|
1710
|
+
#endif
|
1711
|
+
|
1712
|
+
/* krb5_free.c */
|
1713
|
+
void KRB5_CALLCONV krb5_free_principal
|
1714
|
+
(krb5_context, krb5_principal );
|
1715
|
+
void KRB5_CALLCONV krb5_free_authenticator
|
1716
|
+
(krb5_context, krb5_authenticator * );
|
1717
|
+
#if KRB5_PRIVATE
|
1718
|
+
void KRB5_CALLCONV krb5_free_authenticator_contents
|
1719
|
+
(krb5_context, krb5_authenticator * );
|
1720
|
+
#endif
|
1721
|
+
void KRB5_CALLCONV krb5_free_addresses
|
1722
|
+
(krb5_context, krb5_address ** );
|
1723
|
+
#if KRB5_PRIVATE
|
1724
|
+
void KRB5_CALLCONV krb5_free_address
|
1725
|
+
(krb5_context, krb5_address * );
|
1726
|
+
#endif
|
1727
|
+
void KRB5_CALLCONV krb5_free_authdata
|
1728
|
+
(krb5_context, krb5_authdata ** );
|
1729
|
+
#if KRB5_PRIVATE
|
1730
|
+
void KRB5_CALLCONV krb5_free_enc_tkt_part
|
1731
|
+
(krb5_context, krb5_enc_tkt_part * );
|
1732
|
+
#endif
|
1733
|
+
void KRB5_CALLCONV krb5_free_ticket
|
1734
|
+
(krb5_context, krb5_ticket * );
|
1735
|
+
#if KRB5_PRIVATE
|
1736
|
+
void KRB5_CALLCONV krb5_free_tickets
|
1737
|
+
(krb5_context, krb5_ticket ** );
|
1738
|
+
void KRB5_CALLCONV krb5_free_kdc_req
|
1739
|
+
(krb5_context, krb5_kdc_req * );
|
1740
|
+
void KRB5_CALLCONV krb5_free_kdc_rep
|
1741
|
+
(krb5_context, krb5_kdc_rep * );
|
1742
|
+
void KRB5_CALLCONV krb5_free_last_req
|
1743
|
+
(krb5_context, krb5_last_req_entry ** );
|
1744
|
+
void KRB5_CALLCONV krb5_free_enc_kdc_rep_part
|
1745
|
+
(krb5_context, krb5_enc_kdc_rep_part * );
|
1746
|
+
#endif
|
1747
|
+
void KRB5_CALLCONV krb5_free_error
|
1748
|
+
(krb5_context, krb5_error * );
|
1749
|
+
#if KRB5_PRIVATE
|
1750
|
+
void KRB5_CALLCONV krb5_free_ap_req
|
1751
|
+
(krb5_context, krb5_ap_req * );
|
1752
|
+
void KRB5_CALLCONV krb5_free_ap_rep
|
1753
|
+
(krb5_context, krb5_ap_rep * );
|
1754
|
+
void KRB5_CALLCONV krb5_free_cred
|
1755
|
+
(krb5_context, krb5_cred *);
|
1756
|
+
#endif
|
1757
|
+
void KRB5_CALLCONV krb5_free_creds
|
1758
|
+
(krb5_context, krb5_creds *);
|
1759
|
+
void KRB5_CALLCONV krb5_free_cred_contents
|
1760
|
+
(krb5_context, krb5_creds *);
|
1761
|
+
#if KRB5_PRIVATE
|
1762
|
+
void KRB5_CALLCONV krb5_free_cred_enc_part
|
1763
|
+
(krb5_context, krb5_cred_enc_part *);
|
1764
|
+
#endif
|
1765
|
+
void KRB5_CALLCONV krb5_free_checksum
|
1766
|
+
(krb5_context, krb5_checksum *);
|
1767
|
+
void KRB5_CALLCONV krb5_free_checksum_contents
|
1768
|
+
(krb5_context, krb5_checksum *);
|
1769
|
+
void KRB5_CALLCONV krb5_free_keyblock
|
1770
|
+
(krb5_context, krb5_keyblock *);
|
1771
|
+
void KRB5_CALLCONV krb5_free_keyblock_contents
|
1772
|
+
(krb5_context, krb5_keyblock *);
|
1773
|
+
#if KRB5_PRIVATE
|
1774
|
+
void KRB5_CALLCONV krb5_free_pa_data
|
1775
|
+
(krb5_context, krb5_pa_data **);
|
1776
|
+
#endif
|
1777
|
+
void KRB5_CALLCONV krb5_free_ap_rep_enc_part
|
1778
|
+
(krb5_context, krb5_ap_rep_enc_part *);
|
1779
|
+
#if KRB5_PRIVATE
|
1780
|
+
void KRB5_CALLCONV krb5_free_tkt_authent
|
1781
|
+
(krb5_context, krb5_tkt_authent *);
|
1782
|
+
void KRB5_CALLCONV krb5_free_pwd_data
|
1783
|
+
(krb5_context, krb5_pwd_data *);
|
1784
|
+
void KRB5_CALLCONV krb5_free_pwd_sequences
|
1785
|
+
(krb5_context, passwd_phrase_element **);
|
1786
|
+
#endif
|
1787
|
+
void KRB5_CALLCONV krb5_free_data
|
1788
|
+
(krb5_context, krb5_data *);
|
1789
|
+
void KRB5_CALLCONV krb5_free_data_contents
|
1790
|
+
(krb5_context, krb5_data *);
|
1791
|
+
void KRB5_CALLCONV krb5_free_unparsed_name
|
1792
|
+
(krb5_context, char *);
|
1793
|
+
void KRB5_CALLCONV krb5_free_cksumtypes
|
1794
|
+
(krb5_context, krb5_cksumtype *);
|
1795
|
+
|
1796
|
+
/* From krb5/os but needed but by the outside world */
|
1797
|
+
krb5_error_code KRB5_CALLCONV krb5_us_timeofday
|
1798
|
+
(krb5_context,
|
1799
|
+
krb5_int32 *,
|
1800
|
+
krb5_int32 * );
|
1801
|
+
krb5_error_code KRB5_CALLCONV krb5_timeofday
|
1802
|
+
(krb5_context,
|
1803
|
+
krb5_int32 * );
|
1804
|
+
/* get all the addresses of this host */
|
1805
|
+
krb5_error_code KRB5_CALLCONV krb5_os_localaddr
|
1806
|
+
(krb5_context,
|
1807
|
+
krb5_address ***);
|
1808
|
+
krb5_error_code KRB5_CALLCONV krb5_get_default_realm
|
1809
|
+
(krb5_context,
|
1810
|
+
char ** );
|
1811
|
+
krb5_error_code KRB5_CALLCONV krb5_set_default_realm
|
1812
|
+
(krb5_context,
|
1813
|
+
const char * );
|
1814
|
+
void KRB5_CALLCONV krb5_free_default_realm
|
1815
|
+
(krb5_context,
|
1816
|
+
char * );
|
1817
|
+
krb5_error_code KRB5_CALLCONV krb5_sname_to_principal
|
1818
|
+
(krb5_context,
|
1819
|
+
const char *,
|
1820
|
+
const char *,
|
1821
|
+
krb5_int32,
|
1822
|
+
krb5_principal *);
|
1823
|
+
krb5_error_code KRB5_CALLCONV
|
1824
|
+
krb5_change_password
|
1825
|
+
(krb5_context context, krb5_creds *creds, char *newpw,
|
1826
|
+
int *result_code, krb5_data *result_code_string,
|
1827
|
+
krb5_data *result_string);
|
1828
|
+
krb5_error_code KRB5_CALLCONV
|
1829
|
+
krb5_set_password
|
1830
|
+
(krb5_context context, krb5_creds *creds, char *newpw, krb5_principal change_password_for,
|
1831
|
+
int *result_code, krb5_data *result_code_string, krb5_data *result_string);
|
1832
|
+
krb5_error_code KRB5_CALLCONV
|
1833
|
+
krb5_set_password_using_ccache
|
1834
|
+
(krb5_context context, krb5_ccache ccache, char *newpw, krb5_principal change_password_for,
|
1835
|
+
int *result_code, krb5_data *result_code_string, krb5_data *result_string);
|
1836
|
+
|
1837
|
+
#if KRB5_PRIVATE
|
1838
|
+
krb5_error_code krb5_set_config_files
|
1839
|
+
(krb5_context, const char **);
|
1840
|
+
|
1841
|
+
krb5_error_code KRB5_CALLCONV krb5_get_default_config_files
|
1842
|
+
(char ***filenames);
|
1843
|
+
|
1844
|
+
void KRB5_CALLCONV krb5_free_config_files
|
1845
|
+
(char **filenames);
|
1846
|
+
#endif
|
1847
|
+
|
1848
|
+
krb5_error_code KRB5_CALLCONV
|
1849
|
+
krb5_get_profile
|
1850
|
+
(krb5_context, struct _profile_t * /* profile_t */ *);
|
1851
|
+
|
1852
|
+
#if KRB5_PRIVATE
|
1853
|
+
krb5_error_code krb5_send_tgs
|
1854
|
+
(krb5_context,
|
1855
|
+
krb5_flags,
|
1856
|
+
const krb5_ticket_times *,
|
1857
|
+
const krb5_enctype *,
|
1858
|
+
krb5_const_principal,
|
1859
|
+
krb5_address * const *,
|
1860
|
+
krb5_authdata * const *,
|
1861
|
+
krb5_pa_data * const *,
|
1862
|
+
const krb5_data *,
|
1863
|
+
krb5_creds *,
|
1864
|
+
krb5_response * );
|
1865
|
+
#endif
|
1866
|
+
|
1867
|
+
#if KRB5_DEPRECATED
|
1868
|
+
krb5_error_code KRB5_CALLCONV krb5_get_in_tkt
|
1869
|
+
(krb5_context,
|
1870
|
+
krb5_flags,
|
1871
|
+
krb5_address * const *,
|
1872
|
+
krb5_enctype *,
|
1873
|
+
krb5_preauthtype *,
|
1874
|
+
krb5_error_code ( * )(krb5_context,
|
1875
|
+
krb5_enctype,
|
1876
|
+
krb5_data *,
|
1877
|
+
krb5_const_pointer,
|
1878
|
+
krb5_keyblock **),
|
1879
|
+
krb5_const_pointer,
|
1880
|
+
krb5_error_code ( * )(krb5_context,
|
1881
|
+
const krb5_keyblock *,
|
1882
|
+
krb5_const_pointer,
|
1883
|
+
krb5_kdc_rep * ),
|
1884
|
+
krb5_const_pointer,
|
1885
|
+
krb5_creds *,
|
1886
|
+
krb5_ccache,
|
1887
|
+
krb5_kdc_rep ** );
|
1888
|
+
|
1889
|
+
krb5_error_code KRB5_CALLCONV krb5_get_in_tkt_with_password
|
1890
|
+
(krb5_context,
|
1891
|
+
krb5_flags,
|
1892
|
+
krb5_address * const *,
|
1893
|
+
krb5_enctype *,
|
1894
|
+
krb5_preauthtype *,
|
1895
|
+
const char *,
|
1896
|
+
krb5_ccache,
|
1897
|
+
krb5_creds *,
|
1898
|
+
krb5_kdc_rep ** );
|
1899
|
+
|
1900
|
+
krb5_error_code KRB5_CALLCONV krb5_get_in_tkt_with_skey
|
1901
|
+
(krb5_context,
|
1902
|
+
krb5_flags,
|
1903
|
+
krb5_address * const *,
|
1904
|
+
krb5_enctype *,
|
1905
|
+
krb5_preauthtype *,
|
1906
|
+
const krb5_keyblock *,
|
1907
|
+
krb5_ccache,
|
1908
|
+
krb5_creds *,
|
1909
|
+
krb5_kdc_rep ** );
|
1910
|
+
|
1911
|
+
krb5_error_code KRB5_CALLCONV krb5_get_in_tkt_with_keytab
|
1912
|
+
(krb5_context,
|
1913
|
+
krb5_flags,
|
1914
|
+
krb5_address * const *,
|
1915
|
+
krb5_enctype *,
|
1916
|
+
krb5_preauthtype *,
|
1917
|
+
krb5_keytab,
|
1918
|
+
krb5_ccache,
|
1919
|
+
krb5_creds *,
|
1920
|
+
krb5_kdc_rep ** );
|
1921
|
+
#endif /* KRB5_DEPRECATED */
|
1922
|
+
|
1923
|
+
#if KRB5_PRIVATE
|
1924
|
+
krb5_error_code krb5_decode_kdc_rep
|
1925
|
+
(krb5_context,
|
1926
|
+
krb5_data *,
|
1927
|
+
const krb5_keyblock *,
|
1928
|
+
krb5_kdc_rep ** );
|
1929
|
+
#endif
|
1930
|
+
|
1931
|
+
krb5_error_code KRB5_CALLCONV krb5_rd_req
|
1932
|
+
(krb5_context,
|
1933
|
+
krb5_auth_context *,
|
1934
|
+
const krb5_data *,
|
1935
|
+
krb5_const_principal,
|
1936
|
+
krb5_keytab,
|
1937
|
+
krb5_flags *,
|
1938
|
+
krb5_ticket **);
|
1939
|
+
|
1940
|
+
#if KRB5_PRIVATE
|
1941
|
+
krb5_error_code krb5_rd_req_decoded
|
1942
|
+
(krb5_context,
|
1943
|
+
krb5_auth_context *,
|
1944
|
+
const krb5_ap_req *,
|
1945
|
+
krb5_const_principal,
|
1946
|
+
krb5_keytab,
|
1947
|
+
krb5_flags *,
|
1948
|
+
krb5_ticket **);
|
1949
|
+
|
1950
|
+
krb5_error_code krb5_rd_req_decoded_anyflag
|
1951
|
+
(krb5_context,
|
1952
|
+
krb5_auth_context *,
|
1953
|
+
const krb5_ap_req *,
|
1954
|
+
krb5_const_principal,
|
1955
|
+
krb5_keytab,
|
1956
|
+
krb5_flags *,
|
1957
|
+
krb5_ticket **);
|
1958
|
+
#endif
|
1959
|
+
|
1960
|
+
krb5_error_code KRB5_CALLCONV krb5_kt_read_service_key
|
1961
|
+
(krb5_context,
|
1962
|
+
krb5_pointer,
|
1963
|
+
krb5_principal,
|
1964
|
+
krb5_kvno,
|
1965
|
+
krb5_enctype,
|
1966
|
+
krb5_keyblock **);
|
1967
|
+
krb5_error_code KRB5_CALLCONV krb5_mk_safe
|
1968
|
+
(krb5_context,
|
1969
|
+
krb5_auth_context,
|
1970
|
+
const krb5_data *,
|
1971
|
+
krb5_data *,
|
1972
|
+
krb5_replay_data *);
|
1973
|
+
krb5_error_code KRB5_CALLCONV krb5_mk_priv
|
1974
|
+
(krb5_context,
|
1975
|
+
krb5_auth_context,
|
1976
|
+
const krb5_data *,
|
1977
|
+
krb5_data *,
|
1978
|
+
krb5_replay_data *);
|
1979
|
+
#if KRB5_PRIVATE
|
1980
|
+
krb5_error_code KRB5_CALLCONV krb5_cc_register
|
1981
|
+
(krb5_context,
|
1982
|
+
krb5_cc_ops *,
|
1983
|
+
krb5_boolean );
|
1984
|
+
#endif
|
1985
|
+
|
1986
|
+
krb5_error_code KRB5_CALLCONV krb5_sendauth
|
1987
|
+
(krb5_context,
|
1988
|
+
krb5_auth_context *,
|
1989
|
+
krb5_pointer,
|
1990
|
+
char *,
|
1991
|
+
krb5_principal,
|
1992
|
+
krb5_principal,
|
1993
|
+
krb5_flags,
|
1994
|
+
krb5_data *,
|
1995
|
+
krb5_creds *,
|
1996
|
+
krb5_ccache,
|
1997
|
+
krb5_error **,
|
1998
|
+
krb5_ap_rep_enc_part **,
|
1999
|
+
krb5_creds **);
|
2000
|
+
|
2001
|
+
krb5_error_code KRB5_CALLCONV krb5_recvauth
|
2002
|
+
(krb5_context,
|
2003
|
+
krb5_auth_context *,
|
2004
|
+
krb5_pointer,
|
2005
|
+
char *,
|
2006
|
+
krb5_principal,
|
2007
|
+
krb5_int32,
|
2008
|
+
krb5_keytab,
|
2009
|
+
krb5_ticket **);
|
2010
|
+
krb5_error_code KRB5_CALLCONV krb5_recvauth_version
|
2011
|
+
(krb5_context,
|
2012
|
+
krb5_auth_context *,
|
2013
|
+
krb5_pointer,
|
2014
|
+
krb5_principal,
|
2015
|
+
krb5_int32,
|
2016
|
+
krb5_keytab,
|
2017
|
+
krb5_ticket **,
|
2018
|
+
krb5_data *);
|
2019
|
+
|
2020
|
+
#if KRB5_PRIVATE
|
2021
|
+
krb5_error_code krb5_walk_realm_tree
|
2022
|
+
(krb5_context,
|
2023
|
+
const krb5_data *,
|
2024
|
+
const krb5_data *,
|
2025
|
+
krb5_principal **,
|
2026
|
+
int);
|
2027
|
+
#endif
|
2028
|
+
|
2029
|
+
krb5_error_code KRB5_CALLCONV krb5_mk_ncred
|
2030
|
+
(krb5_context,
|
2031
|
+
krb5_auth_context,
|
2032
|
+
krb5_creds **,
|
2033
|
+
krb5_data **,
|
2034
|
+
krb5_replay_data *);
|
2035
|
+
|
2036
|
+
krb5_error_code KRB5_CALLCONV krb5_mk_1cred
|
2037
|
+
(krb5_context,
|
2038
|
+
krb5_auth_context,
|
2039
|
+
krb5_creds *,
|
2040
|
+
krb5_data **,
|
2041
|
+
krb5_replay_data *);
|
2042
|
+
|
2043
|
+
krb5_error_code KRB5_CALLCONV krb5_rd_cred
|
2044
|
+
(krb5_context,
|
2045
|
+
krb5_auth_context,
|
2046
|
+
krb5_data *,
|
2047
|
+
krb5_creds ***,
|
2048
|
+
krb5_replay_data *);
|
2049
|
+
|
2050
|
+
krb5_error_code KRB5_CALLCONV krb5_fwd_tgt_creds
|
2051
|
+
(krb5_context,
|
2052
|
+
krb5_auth_context,
|
2053
|
+
char *,
|
2054
|
+
krb5_principal,
|
2055
|
+
krb5_principal,
|
2056
|
+
krb5_ccache,
|
2057
|
+
int forwardable,
|
2058
|
+
krb5_data *);
|
2059
|
+
|
2060
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_init
|
2061
|
+
(krb5_context,
|
2062
|
+
krb5_auth_context *);
|
2063
|
+
|
2064
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_free
|
2065
|
+
(krb5_context,
|
2066
|
+
krb5_auth_context);
|
2067
|
+
|
2068
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_setflags
|
2069
|
+
(krb5_context,
|
2070
|
+
krb5_auth_context,
|
2071
|
+
krb5_int32);
|
2072
|
+
|
2073
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_getflags
|
2074
|
+
(krb5_context,
|
2075
|
+
krb5_auth_context,
|
2076
|
+
krb5_int32 *);
|
2077
|
+
|
2078
|
+
krb5_error_code KRB5_CALLCONV
|
2079
|
+
krb5_auth_con_set_checksum_func (krb5_context, krb5_auth_context,
|
2080
|
+
krb5_mk_req_checksum_func, void *);
|
2081
|
+
|
2082
|
+
krb5_error_code KRB5_CALLCONV
|
2083
|
+
krb5_auth_con_get_checksum_func( krb5_context, krb5_auth_context,
|
2084
|
+
krb5_mk_req_checksum_func *, void **);
|
2085
|
+
|
2086
|
+
krb5_error_code KRB5_CALLCONV_WRONG krb5_auth_con_setaddrs
|
2087
|
+
(krb5_context,
|
2088
|
+
krb5_auth_context,
|
2089
|
+
krb5_address *,
|
2090
|
+
krb5_address *);
|
2091
|
+
|
2092
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_getaddrs
|
2093
|
+
(krb5_context,
|
2094
|
+
krb5_auth_context,
|
2095
|
+
krb5_address **,
|
2096
|
+
krb5_address **);
|
2097
|
+
|
2098
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_setports
|
2099
|
+
(krb5_context,
|
2100
|
+
krb5_auth_context,
|
2101
|
+
krb5_address *,
|
2102
|
+
krb5_address *);
|
2103
|
+
|
2104
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_setuseruserkey
|
2105
|
+
(krb5_context,
|
2106
|
+
krb5_auth_context,
|
2107
|
+
krb5_keyblock *);
|
2108
|
+
|
2109
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_getkey
|
2110
|
+
(krb5_context,
|
2111
|
+
krb5_auth_context,
|
2112
|
+
krb5_keyblock **);
|
2113
|
+
|
2114
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_getsendsubkey(
|
2115
|
+
krb5_context, krb5_auth_context, krb5_keyblock **);
|
2116
|
+
|
2117
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_getrecvsubkey(
|
2118
|
+
krb5_context, krb5_auth_context, krb5_keyblock **);
|
2119
|
+
|
2120
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_setsendsubkey(
|
2121
|
+
krb5_context, krb5_auth_context, krb5_keyblock *);
|
2122
|
+
|
2123
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_setrecvsubkey(
|
2124
|
+
krb5_context, krb5_auth_context, krb5_keyblock *);
|
2125
|
+
|
2126
|
+
#if KRB5_DEPRECATED
|
2127
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_getlocalsubkey
|
2128
|
+
(krb5_context,
|
2129
|
+
krb5_auth_context,
|
2130
|
+
krb5_keyblock **);
|
2131
|
+
|
2132
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_getremotesubkey
|
2133
|
+
(krb5_context,
|
2134
|
+
krb5_auth_context,
|
2135
|
+
krb5_keyblock **);
|
2136
|
+
#endif
|
2137
|
+
|
2138
|
+
#if KRB5_PRIVATE
|
2139
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_set_req_cksumtype
|
2140
|
+
(krb5_context,
|
2141
|
+
krb5_auth_context,
|
2142
|
+
krb5_cksumtype);
|
2143
|
+
|
2144
|
+
krb5_error_code krb5_auth_con_set_safe_cksumtype
|
2145
|
+
(krb5_context,
|
2146
|
+
krb5_auth_context,
|
2147
|
+
krb5_cksumtype);
|
2148
|
+
#endif
|
2149
|
+
|
2150
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_getlocalseqnumber
|
2151
|
+
(krb5_context,
|
2152
|
+
krb5_auth_context,
|
2153
|
+
krb5_int32 *);
|
2154
|
+
|
2155
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_getremoteseqnumber
|
2156
|
+
(krb5_context,
|
2157
|
+
krb5_auth_context,
|
2158
|
+
krb5_int32 *);
|
2159
|
+
|
2160
|
+
#if KRB5_DEPRECATED
|
2161
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_initivector
|
2162
|
+
(krb5_context,
|
2163
|
+
krb5_auth_context);
|
2164
|
+
#endif
|
2165
|
+
|
2166
|
+
#if KRB5_PRIVATE
|
2167
|
+
krb5_error_code krb5_auth_con_setivector
|
2168
|
+
(krb5_context,
|
2169
|
+
krb5_auth_context,
|
2170
|
+
krb5_pointer);
|
2171
|
+
|
2172
|
+
krb5_error_code krb5_auth_con_getivector
|
2173
|
+
(krb5_context,
|
2174
|
+
krb5_auth_context,
|
2175
|
+
krb5_pointer *);
|
2176
|
+
#endif
|
2177
|
+
|
2178
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_setrcache
|
2179
|
+
(krb5_context,
|
2180
|
+
krb5_auth_context,
|
2181
|
+
krb5_rcache);
|
2182
|
+
|
2183
|
+
krb5_error_code KRB5_CALLCONV_WRONG krb5_auth_con_getrcache
|
2184
|
+
(krb5_context,
|
2185
|
+
krb5_auth_context,
|
2186
|
+
krb5_rcache *);
|
2187
|
+
|
2188
|
+
#if KRB5_PRIVATE
|
2189
|
+
krb5_error_code krb5_auth_con_setpermetypes
|
2190
|
+
(krb5_context,
|
2191
|
+
krb5_auth_context,
|
2192
|
+
const krb5_enctype *);
|
2193
|
+
|
2194
|
+
krb5_error_code krb5_auth_con_getpermetypes
|
2195
|
+
(krb5_context,
|
2196
|
+
krb5_auth_context,
|
2197
|
+
krb5_enctype **);
|
2198
|
+
#endif
|
2199
|
+
|
2200
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_getauthenticator
|
2201
|
+
(krb5_context,
|
2202
|
+
krb5_auth_context,
|
2203
|
+
krb5_authenticator **);
|
2204
|
+
|
2205
|
+
#define KRB5_REALM_BRANCH_CHAR '.'
|
2206
|
+
|
2207
|
+
/*
|
2208
|
+
* end "func-proto.h"
|
2209
|
+
*/
|
2210
|
+
|
2211
|
+
/*
|
2212
|
+
* begin stuff from libos.h
|
2213
|
+
*/
|
2214
|
+
|
2215
|
+
#if KRB5_PRIVATE
|
2216
|
+
krb5_error_code krb5_read_message (krb5_context, krb5_pointer, krb5_data *);
|
2217
|
+
krb5_error_code krb5_write_message (krb5_context, krb5_pointer, krb5_data *);
|
2218
|
+
int krb5_net_read (krb5_context, int , char *, int);
|
2219
|
+
int krb5_net_write (krb5_context, int , const char *, int);
|
2220
|
+
#endif
|
2221
|
+
|
2222
|
+
krb5_error_code KRB5_CALLCONV krb5_read_password
|
2223
|
+
(krb5_context,
|
2224
|
+
const char *,
|
2225
|
+
const char *,
|
2226
|
+
char *,
|
2227
|
+
unsigned int * );
|
2228
|
+
krb5_error_code KRB5_CALLCONV krb5_aname_to_localname
|
2229
|
+
(krb5_context,
|
2230
|
+
krb5_const_principal,
|
2231
|
+
int,
|
2232
|
+
char * );
|
2233
|
+
krb5_error_code KRB5_CALLCONV krb5_get_host_realm
|
2234
|
+
(krb5_context,
|
2235
|
+
const char *,
|
2236
|
+
char *** );
|
2237
|
+
krb5_error_code KRB5_CALLCONV krb5_free_host_realm
|
2238
|
+
(krb5_context,
|
2239
|
+
char * const * );
|
2240
|
+
#if KRB5_PRIVATE
|
2241
|
+
krb5_error_code KRB5_CALLCONV krb5_get_realm_domain
|
2242
|
+
(krb5_context,
|
2243
|
+
const char *,
|
2244
|
+
char ** );
|
2245
|
+
#endif
|
2246
|
+
krb5_boolean KRB5_CALLCONV krb5_kuserok
|
2247
|
+
(krb5_context,
|
2248
|
+
krb5_principal, const char *);
|
2249
|
+
krb5_error_code KRB5_CALLCONV krb5_auth_con_genaddrs
|
2250
|
+
(krb5_context,
|
2251
|
+
krb5_auth_context,
|
2252
|
+
int, int);
|
2253
|
+
#if KRB5_PRIVATE
|
2254
|
+
krb5_error_code krb5_gen_portaddr
|
2255
|
+
(krb5_context,
|
2256
|
+
const krb5_address *,
|
2257
|
+
krb5_const_pointer,
|
2258
|
+
krb5_address **);
|
2259
|
+
krb5_error_code krb5_gen_replay_name
|
2260
|
+
(krb5_context,
|
2261
|
+
const krb5_address *,
|
2262
|
+
const char *,
|
2263
|
+
char **);
|
2264
|
+
krb5_error_code krb5_make_fulladdr
|
2265
|
+
(krb5_context,
|
2266
|
+
krb5_address *,
|
2267
|
+
krb5_address *,
|
2268
|
+
krb5_address *);
|
2269
|
+
#endif
|
2270
|
+
|
2271
|
+
krb5_error_code KRB5_CALLCONV krb5_set_real_time
|
2272
|
+
(krb5_context, krb5_int32, krb5_int32);
|
2273
|
+
|
2274
|
+
#if KRB5_PRIVATE
|
2275
|
+
krb5_error_code krb5_set_debugging_time
|
2276
|
+
(krb5_context, krb5_int32, krb5_int32);
|
2277
|
+
krb5_error_code krb5_use_natural_time
|
2278
|
+
(krb5_context);
|
2279
|
+
#endif
|
2280
|
+
krb5_error_code KRB5_CALLCONV krb5_get_time_offsets
|
2281
|
+
(krb5_context, krb5_int32 *, krb5_int32 *);
|
2282
|
+
#if KRB5_PRIVATE
|
2283
|
+
krb5_error_code krb5_set_time_offsets
|
2284
|
+
(krb5_context, krb5_int32, krb5_int32);
|
2285
|
+
#endif
|
2286
|
+
|
2287
|
+
/* str_conv.c */
|
2288
|
+
krb5_error_code KRB5_CALLCONV krb5_string_to_enctype
|
2289
|
+
(char *, krb5_enctype *);
|
2290
|
+
krb5_error_code KRB5_CALLCONV krb5_string_to_salttype
|
2291
|
+
(char *, krb5_int32 *);
|
2292
|
+
krb5_error_code KRB5_CALLCONV krb5_string_to_cksumtype
|
2293
|
+
(char *, krb5_cksumtype *);
|
2294
|
+
krb5_error_code KRB5_CALLCONV krb5_string_to_timestamp
|
2295
|
+
(char *, krb5_timestamp *);
|
2296
|
+
krb5_error_code KRB5_CALLCONV krb5_string_to_deltat
|
2297
|
+
(char *, krb5_deltat *);
|
2298
|
+
krb5_error_code KRB5_CALLCONV krb5_enctype_to_string
|
2299
|
+
(krb5_enctype, char *, size_t);
|
2300
|
+
krb5_error_code KRB5_CALLCONV krb5_salttype_to_string
|
2301
|
+
(krb5_int32, char *, size_t);
|
2302
|
+
krb5_error_code KRB5_CALLCONV krb5_cksumtype_to_string
|
2303
|
+
(krb5_cksumtype, char *, size_t);
|
2304
|
+
krb5_error_code KRB5_CALLCONV krb5_timestamp_to_string
|
2305
|
+
(krb5_timestamp, char *, size_t);
|
2306
|
+
krb5_error_code KRB5_CALLCONV krb5_timestamp_to_sfstring
|
2307
|
+
(krb5_timestamp, char *, size_t, char *);
|
2308
|
+
krb5_error_code KRB5_CALLCONV krb5_deltat_to_string
|
2309
|
+
(krb5_deltat, char *, size_t);
|
2310
|
+
|
2311
|
+
|
2312
|
+
|
2313
|
+
/* The name of the Kerberos ticket granting service... and its size */
|
2314
|
+
#define KRB5_TGS_NAME "krbtgt"
|
2315
|
+
#define KRB5_TGS_NAME_SIZE 6
|
2316
|
+
|
2317
|
+
/* flags for recvauth */
|
2318
|
+
#define KRB5_RECVAUTH_SKIP_VERSION 0x0001
|
2319
|
+
#define KRB5_RECVAUTH_BADAUTHVERS 0x0002
|
2320
|
+
/* initial ticket api functions */
|
2321
|
+
|
2322
|
+
typedef struct _krb5_prompt {
|
2323
|
+
char *prompt;
|
2324
|
+
int hidden;
|
2325
|
+
krb5_data *reply;
|
2326
|
+
} krb5_prompt;
|
2327
|
+
|
2328
|
+
typedef krb5_error_code (KRB5_CALLCONV *krb5_prompter_fct)(krb5_context context,
|
2329
|
+
void *data,
|
2330
|
+
const char *name,
|
2331
|
+
const char *banner,
|
2332
|
+
int num_prompts,
|
2333
|
+
krb5_prompt prompts[]);
|
2334
|
+
|
2335
|
+
|
2336
|
+
krb5_error_code KRB5_CALLCONV
|
2337
|
+
krb5_prompter_posix (krb5_context context,
|
2338
|
+
void *data,
|
2339
|
+
const char *name,
|
2340
|
+
const char *banner,
|
2341
|
+
int num_prompts,
|
2342
|
+
krb5_prompt prompts[]);
|
2343
|
+
|
2344
|
+
typedef struct _krb5_get_init_creds_opt {
|
2345
|
+
krb5_flags flags;
|
2346
|
+
krb5_deltat tkt_life;
|
2347
|
+
krb5_deltat renew_life;
|
2348
|
+
int forwardable;
|
2349
|
+
int proxiable;
|
2350
|
+
krb5_enctype *etype_list;
|
2351
|
+
int etype_list_length;
|
2352
|
+
krb5_address **address_list;
|
2353
|
+
krb5_preauthtype *preauth_list;
|
2354
|
+
int preauth_list_length;
|
2355
|
+
krb5_data *salt;
|
2356
|
+
} krb5_get_init_creds_opt;
|
2357
|
+
|
2358
|
+
#define KRB5_GET_INIT_CREDS_OPT_TKT_LIFE 0x0001
|
2359
|
+
#define KRB5_GET_INIT_CREDS_OPT_RENEW_LIFE 0x0002
|
2360
|
+
#define KRB5_GET_INIT_CREDS_OPT_FORWARDABLE 0x0004
|
2361
|
+
#define KRB5_GET_INIT_CREDS_OPT_PROXIABLE 0x0008
|
2362
|
+
#define KRB5_GET_INIT_CREDS_OPT_ETYPE_LIST 0x0010
|
2363
|
+
#define KRB5_GET_INIT_CREDS_OPT_ADDRESS_LIST 0x0020
|
2364
|
+
#define KRB5_GET_INIT_CREDS_OPT_PREAUTH_LIST 0x0040
|
2365
|
+
#define KRB5_GET_INIT_CREDS_OPT_SALT 0x0080
|
2366
|
+
|
2367
|
+
|
2368
|
+
void KRB5_CALLCONV
|
2369
|
+
krb5_get_init_creds_opt_init
|
2370
|
+
(krb5_get_init_creds_opt *opt);
|
2371
|
+
|
2372
|
+
void KRB5_CALLCONV
|
2373
|
+
krb5_get_init_creds_opt_set_tkt_life
|
2374
|
+
(krb5_get_init_creds_opt *opt,
|
2375
|
+
krb5_deltat tkt_life);
|
2376
|
+
|
2377
|
+
void KRB5_CALLCONV
|
2378
|
+
krb5_get_init_creds_opt_set_renew_life
|
2379
|
+
(krb5_get_init_creds_opt *opt,
|
2380
|
+
krb5_deltat renew_life);
|
2381
|
+
|
2382
|
+
void KRB5_CALLCONV
|
2383
|
+
krb5_get_init_creds_opt_set_forwardable
|
2384
|
+
(krb5_get_init_creds_opt *opt,
|
2385
|
+
int forwardable);
|
2386
|
+
|
2387
|
+
void KRB5_CALLCONV
|
2388
|
+
krb5_get_init_creds_opt_set_proxiable
|
2389
|
+
(krb5_get_init_creds_opt *opt,
|
2390
|
+
int proxiable);
|
2391
|
+
|
2392
|
+
void KRB5_CALLCONV
|
2393
|
+
krb5_get_init_creds_opt_set_etype_list
|
2394
|
+
(krb5_get_init_creds_opt *opt,
|
2395
|
+
krb5_enctype *etype_list,
|
2396
|
+
int etype_list_length);
|
2397
|
+
|
2398
|
+
void KRB5_CALLCONV
|
2399
|
+
krb5_get_init_creds_opt_set_address_list
|
2400
|
+
(krb5_get_init_creds_opt *opt,
|
2401
|
+
krb5_address **addresses);
|
2402
|
+
|
2403
|
+
void KRB5_CALLCONV
|
2404
|
+
krb5_get_init_creds_opt_set_preauth_list
|
2405
|
+
(krb5_get_init_creds_opt *opt,
|
2406
|
+
krb5_preauthtype *preauth_list,
|
2407
|
+
int preauth_list_length);
|
2408
|
+
|
2409
|
+
void KRB5_CALLCONV
|
2410
|
+
krb5_get_init_creds_opt_set_salt
|
2411
|
+
(krb5_get_init_creds_opt *opt,
|
2412
|
+
krb5_data *salt);
|
2413
|
+
|
2414
|
+
|
2415
|
+
|
2416
|
+
krb5_error_code KRB5_CALLCONV
|
2417
|
+
krb5_get_init_creds_password
|
2418
|
+
(krb5_context context,
|
2419
|
+
krb5_creds *creds,
|
2420
|
+
krb5_principal client,
|
2421
|
+
char *password,
|
2422
|
+
krb5_prompter_fct prompter,
|
2423
|
+
void *data,
|
2424
|
+
krb5_deltat start_time,
|
2425
|
+
char *in_tkt_service,
|
2426
|
+
krb5_get_init_creds_opt *k5_gic_options);
|
2427
|
+
|
2428
|
+
krb5_error_code KRB5_CALLCONV
|
2429
|
+
krb5_get_init_creds_keytab
|
2430
|
+
(krb5_context context,
|
2431
|
+
krb5_creds *creds,
|
2432
|
+
krb5_principal client,
|
2433
|
+
krb5_keytab arg_keytab,
|
2434
|
+
krb5_deltat start_time,
|
2435
|
+
char *in_tkt_service,
|
2436
|
+
krb5_get_init_creds_opt *k5_gic_options);
|
2437
|
+
|
2438
|
+
typedef struct _krb5_verify_init_creds_opt {
|
2439
|
+
krb5_flags flags;
|
2440
|
+
int ap_req_nofail;
|
2441
|
+
} krb5_verify_init_creds_opt;
|
2442
|
+
|
2443
|
+
#define KRB5_VERIFY_INIT_CREDS_OPT_AP_REQ_NOFAIL 0x0001
|
2444
|
+
|
2445
|
+
void KRB5_CALLCONV
|
2446
|
+
krb5_verify_init_creds_opt_init
|
2447
|
+
(krb5_verify_init_creds_opt *k5_vic_options);
|
2448
|
+
void KRB5_CALLCONV
|
2449
|
+
krb5_verify_init_creds_opt_set_ap_req_nofail
|
2450
|
+
(krb5_verify_init_creds_opt *k5_vic_options,
|
2451
|
+
int ap_req_nofail);
|
2452
|
+
|
2453
|
+
krb5_error_code KRB5_CALLCONV
|
2454
|
+
krb5_verify_init_creds
|
2455
|
+
(krb5_context context,
|
2456
|
+
krb5_creds *creds,
|
2457
|
+
krb5_principal ap_req_server,
|
2458
|
+
krb5_keytab ap_req_keytab,
|
2459
|
+
krb5_ccache *ccache,
|
2460
|
+
krb5_verify_init_creds_opt *k5_vic_options);
|
2461
|
+
|
2462
|
+
krb5_error_code KRB5_CALLCONV
|
2463
|
+
krb5_get_validated_creds
|
2464
|
+
(krb5_context context,
|
2465
|
+
krb5_creds *creds,
|
2466
|
+
krb5_principal client,
|
2467
|
+
krb5_ccache ccache,
|
2468
|
+
char *in_tkt_service);
|
2469
|
+
|
2470
|
+
krb5_error_code KRB5_CALLCONV
|
2471
|
+
krb5_get_renewed_creds
|
2472
|
+
(krb5_context context,
|
2473
|
+
krb5_creds *creds,
|
2474
|
+
krb5_principal client,
|
2475
|
+
krb5_ccache ccache,
|
2476
|
+
char *in_tkt_service);
|
2477
|
+
|
2478
|
+
krb5_error_code KRB5_CALLCONV
|
2479
|
+
krb5_decode_ticket
|
2480
|
+
(const krb5_data *code,
|
2481
|
+
krb5_ticket **rep);
|
2482
|
+
|
2483
|
+
void KRB5_CALLCONV
|
2484
|
+
krb5_appdefault_string
|
2485
|
+
(krb5_context context,
|
2486
|
+
const char *appname,
|
2487
|
+
const krb5_data *realm,
|
2488
|
+
const char *option,
|
2489
|
+
const char *default_value,
|
2490
|
+
char ** ret_value);
|
2491
|
+
|
2492
|
+
void KRB5_CALLCONV
|
2493
|
+
krb5_appdefault_boolean
|
2494
|
+
(krb5_context context,
|
2495
|
+
const char *appname,
|
2496
|
+
const krb5_data *realm,
|
2497
|
+
const char *option,
|
2498
|
+
int default_value,
|
2499
|
+
int *ret_value);
|
2500
|
+
|
2501
|
+
#if KRB5_PRIVATE
|
2502
|
+
/*
|
2503
|
+
* The realm iterator functions
|
2504
|
+
*/
|
2505
|
+
|
2506
|
+
krb5_error_code KRB5_CALLCONV krb5_realm_iterator_create
|
2507
|
+
(krb5_context context, void **iter_p);
|
2508
|
+
|
2509
|
+
krb5_error_code KRB5_CALLCONV krb5_realm_iterator
|
2510
|
+
(krb5_context context, void **iter_p, char **ret_realm);
|
2511
|
+
|
2512
|
+
void KRB5_CALLCONV krb5_realm_iterator_free
|
2513
|
+
(krb5_context context, void **iter_p);
|
2514
|
+
|
2515
|
+
void KRB5_CALLCONV krb5_free_realm_string
|
2516
|
+
(krb5_context context, char *str);
|
2517
|
+
#endif
|
2518
|
+
|
2519
|
+
/*
|
2520
|
+
* Prompter enhancements
|
2521
|
+
*/
|
2522
|
+
|
2523
|
+
#define KRB5_PROMPT_TYPE_PASSWORD 0x1
|
2524
|
+
#define KRB5_PROMPT_TYPE_NEW_PASSWORD 0x2
|
2525
|
+
#define KRB5_PROMPT_TYPE_NEW_PASSWORD_AGAIN 0x3
|
2526
|
+
#define KRB5_PROMPT_TYPE_PREAUTH 0x4
|
2527
|
+
|
2528
|
+
typedef krb5_int32 krb5_prompt_type;
|
2529
|
+
|
2530
|
+
krb5_prompt_type* KRB5_CALLCONV krb5_get_prompt_types
|
2531
|
+
(krb5_context context);
|
2532
|
+
|
2533
|
+
#if TARGET_OS_MAC
|
2534
|
+
# pragma options align=reset
|
2535
|
+
#endif
|
2536
|
+
|
2537
|
+
KRB5INT_END_DECLS
|
2538
|
+
|
2539
|
+
/* Don't use this! We're going to phase it out. It's just here to keep
|
2540
|
+
applications from breaking right away. */
|
2541
|
+
#define krb5_const const
|
2542
|
+
|
2543
|
+
#endif /* KRB5_GENERAL__ */
|
2544
|
+
|
2545
|
+
/*
|
2546
|
+
* ettmp99790.h:
|
2547
|
+
* This file is automatically generated; please do not edit it.
|
2548
|
+
*/
|
2549
|
+
|
2550
|
+
#include <com_err.h>
|
2551
|
+
|
2552
|
+
#define KRB5KDC_ERR_NONE (-1765328384L)
|
2553
|
+
#define KRB5KDC_ERR_NAME_EXP (-1765328383L)
|
2554
|
+
#define KRB5KDC_ERR_SERVICE_EXP (-1765328382L)
|
2555
|
+
#define KRB5KDC_ERR_BAD_PVNO (-1765328381L)
|
2556
|
+
#define KRB5KDC_ERR_C_OLD_MAST_KVNO (-1765328380L)
|
2557
|
+
#define KRB5KDC_ERR_S_OLD_MAST_KVNO (-1765328379L)
|
2558
|
+
#define KRB5KDC_ERR_C_PRINCIPAL_UNKNOWN (-1765328378L)
|
2559
|
+
#define KRB5KDC_ERR_S_PRINCIPAL_UNKNOWN (-1765328377L)
|
2560
|
+
#define KRB5KDC_ERR_PRINCIPAL_NOT_UNIQUE (-1765328376L)
|
2561
|
+
#define KRB5KDC_ERR_NULL_KEY (-1765328375L)
|
2562
|
+
#define KRB5KDC_ERR_CANNOT_POSTDATE (-1765328374L)
|
2563
|
+
#define KRB5KDC_ERR_NEVER_VALID (-1765328373L)
|
2564
|
+
#define KRB5KDC_ERR_POLICY (-1765328372L)
|
2565
|
+
#define KRB5KDC_ERR_BADOPTION (-1765328371L)
|
2566
|
+
#define KRB5KDC_ERR_ETYPE_NOSUPP (-1765328370L)
|
2567
|
+
#define KRB5KDC_ERR_SUMTYPE_NOSUPP (-1765328369L)
|
2568
|
+
#define KRB5KDC_ERR_PADATA_TYPE_NOSUPP (-1765328368L)
|
2569
|
+
#define KRB5KDC_ERR_TRTYPE_NOSUPP (-1765328367L)
|
2570
|
+
#define KRB5KDC_ERR_CLIENT_REVOKED (-1765328366L)
|
2571
|
+
#define KRB5KDC_ERR_SERVICE_REVOKED (-1765328365L)
|
2572
|
+
#define KRB5KDC_ERR_TGT_REVOKED (-1765328364L)
|
2573
|
+
#define KRB5KDC_ERR_CLIENT_NOTYET (-1765328363L)
|
2574
|
+
#define KRB5KDC_ERR_SERVICE_NOTYET (-1765328362L)
|
2575
|
+
#define KRB5KDC_ERR_KEY_EXP (-1765328361L)
|
2576
|
+
#define KRB5KDC_ERR_PREAUTH_FAILED (-1765328360L)
|
2577
|
+
#define KRB5KDC_ERR_PREAUTH_REQUIRED (-1765328359L)
|
2578
|
+
#define KRB5KDC_ERR_SERVER_NOMATCH (-1765328358L)
|
2579
|
+
#define KRB5PLACEHOLD_27 (-1765328357L)
|
2580
|
+
#define KRB5PLACEHOLD_28 (-1765328356L)
|
2581
|
+
#define KRB5PLACEHOLD_29 (-1765328355L)
|
2582
|
+
#define KRB5PLACEHOLD_30 (-1765328354L)
|
2583
|
+
#define KRB5KRB_AP_ERR_BAD_INTEGRITY (-1765328353L)
|
2584
|
+
#define KRB5KRB_AP_ERR_TKT_EXPIRED (-1765328352L)
|
2585
|
+
#define KRB5KRB_AP_ERR_TKT_NYV (-1765328351L)
|
2586
|
+
#define KRB5KRB_AP_ERR_REPEAT (-1765328350L)
|
2587
|
+
#define KRB5KRB_AP_ERR_NOT_US (-1765328349L)
|
2588
|
+
#define KRB5KRB_AP_ERR_BADMATCH (-1765328348L)
|
2589
|
+
#define KRB5KRB_AP_ERR_SKEW (-1765328347L)
|
2590
|
+
#define KRB5KRB_AP_ERR_BADADDR (-1765328346L)
|
2591
|
+
#define KRB5KRB_AP_ERR_BADVERSION (-1765328345L)
|
2592
|
+
#define KRB5KRB_AP_ERR_MSG_TYPE (-1765328344L)
|
2593
|
+
#define KRB5KRB_AP_ERR_MODIFIED (-1765328343L)
|
2594
|
+
#define KRB5KRB_AP_ERR_BADORDER (-1765328342L)
|
2595
|
+
#define KRB5KRB_AP_ERR_ILL_CR_TKT (-1765328341L)
|
2596
|
+
#define KRB5KRB_AP_ERR_BADKEYVER (-1765328340L)
|
2597
|
+
#define KRB5KRB_AP_ERR_NOKEY (-1765328339L)
|
2598
|
+
#define KRB5KRB_AP_ERR_MUT_FAIL (-1765328338L)
|
2599
|
+
#define KRB5KRB_AP_ERR_BADDIRECTION (-1765328337L)
|
2600
|
+
#define KRB5KRB_AP_ERR_METHOD (-1765328336L)
|
2601
|
+
#define KRB5KRB_AP_ERR_BADSEQ (-1765328335L)
|
2602
|
+
#define KRB5KRB_AP_ERR_INAPP_CKSUM (-1765328334L)
|
2603
|
+
#define KRB5KRB_AP_PATH_NOT_ACCEPTED (-1765328333L)
|
2604
|
+
#define KRB5KRB_ERR_RESPONSE_TOO_BIG (-1765328332L)
|
2605
|
+
#define KRB5PLACEHOLD_53 (-1765328331L)
|
2606
|
+
#define KRB5PLACEHOLD_54 (-1765328330L)
|
2607
|
+
#define KRB5PLACEHOLD_55 (-1765328329L)
|
2608
|
+
#define KRB5PLACEHOLD_56 (-1765328328L)
|
2609
|
+
#define KRB5PLACEHOLD_57 (-1765328327L)
|
2610
|
+
#define KRB5PLACEHOLD_58 (-1765328326L)
|
2611
|
+
#define KRB5PLACEHOLD_59 (-1765328325L)
|
2612
|
+
#define KRB5KRB_ERR_GENERIC (-1765328324L)
|
2613
|
+
#define KRB5KRB_ERR_FIELD_TOOLONG (-1765328323L)
|
2614
|
+
#define KRB5PLACEHOLD_62 (-1765328322L)
|
2615
|
+
#define KRB5PLACEHOLD_63 (-1765328321L)
|
2616
|
+
#define KRB5PLACEHOLD_64 (-1765328320L)
|
2617
|
+
#define KRB5PLACEHOLD_65 (-1765328319L)
|
2618
|
+
#define KRB5PLACEHOLD_66 (-1765328318L)
|
2619
|
+
#define KRB5PLACEHOLD_67 (-1765328317L)
|
2620
|
+
#define KRB5PLACEHOLD_68 (-1765328316L)
|
2621
|
+
#define KRB5PLACEHOLD_69 (-1765328315L)
|
2622
|
+
#define KRB5PLACEHOLD_70 (-1765328314L)
|
2623
|
+
#define KRB5PLACEHOLD_71 (-1765328313L)
|
2624
|
+
#define KRB5PLACEHOLD_72 (-1765328312L)
|
2625
|
+
#define KRB5PLACEHOLD_73 (-1765328311L)
|
2626
|
+
#define KRB5PLACEHOLD_74 (-1765328310L)
|
2627
|
+
#define KRB5PLACEHOLD_75 (-1765328309L)
|
2628
|
+
#define KRB5PLACEHOLD_76 (-1765328308L)
|
2629
|
+
#define KRB5PLACEHOLD_77 (-1765328307L)
|
2630
|
+
#define KRB5PLACEHOLD_78 (-1765328306L)
|
2631
|
+
#define KRB5PLACEHOLD_79 (-1765328305L)
|
2632
|
+
#define KRB5PLACEHOLD_80 (-1765328304L)
|
2633
|
+
#define KRB5PLACEHOLD_81 (-1765328303L)
|
2634
|
+
#define KRB5PLACEHOLD_82 (-1765328302L)
|
2635
|
+
#define KRB5PLACEHOLD_83 (-1765328301L)
|
2636
|
+
#define KRB5PLACEHOLD_84 (-1765328300L)
|
2637
|
+
#define KRB5PLACEHOLD_85 (-1765328299L)
|
2638
|
+
#define KRB5PLACEHOLD_86 (-1765328298L)
|
2639
|
+
#define KRB5PLACEHOLD_87 (-1765328297L)
|
2640
|
+
#define KRB5PLACEHOLD_88 (-1765328296L)
|
2641
|
+
#define KRB5PLACEHOLD_89 (-1765328295L)
|
2642
|
+
#define KRB5PLACEHOLD_90 (-1765328294L)
|
2643
|
+
#define KRB5PLACEHOLD_91 (-1765328293L)
|
2644
|
+
#define KRB5PLACEHOLD_92 (-1765328292L)
|
2645
|
+
#define KRB5PLACEHOLD_93 (-1765328291L)
|
2646
|
+
#define KRB5PLACEHOLD_94 (-1765328290L)
|
2647
|
+
#define KRB5PLACEHOLD_95 (-1765328289L)
|
2648
|
+
#define KRB5PLACEHOLD_96 (-1765328288L)
|
2649
|
+
#define KRB5PLACEHOLD_97 (-1765328287L)
|
2650
|
+
#define KRB5PLACEHOLD_98 (-1765328286L)
|
2651
|
+
#define KRB5PLACEHOLD_99 (-1765328285L)
|
2652
|
+
#define KRB5PLACEHOLD_100 (-1765328284L)
|
2653
|
+
#define KRB5PLACEHOLD_101 (-1765328283L)
|
2654
|
+
#define KRB5PLACEHOLD_102 (-1765328282L)
|
2655
|
+
#define KRB5PLACEHOLD_103 (-1765328281L)
|
2656
|
+
#define KRB5PLACEHOLD_104 (-1765328280L)
|
2657
|
+
#define KRB5PLACEHOLD_105 (-1765328279L)
|
2658
|
+
#define KRB5PLACEHOLD_106 (-1765328278L)
|
2659
|
+
#define KRB5PLACEHOLD_107 (-1765328277L)
|
2660
|
+
#define KRB5PLACEHOLD_108 (-1765328276L)
|
2661
|
+
#define KRB5PLACEHOLD_109 (-1765328275L)
|
2662
|
+
#define KRB5PLACEHOLD_110 (-1765328274L)
|
2663
|
+
#define KRB5PLACEHOLD_111 (-1765328273L)
|
2664
|
+
#define KRB5PLACEHOLD_112 (-1765328272L)
|
2665
|
+
#define KRB5PLACEHOLD_113 (-1765328271L)
|
2666
|
+
#define KRB5PLACEHOLD_114 (-1765328270L)
|
2667
|
+
#define KRB5PLACEHOLD_115 (-1765328269L)
|
2668
|
+
#define KRB5PLACEHOLD_116 (-1765328268L)
|
2669
|
+
#define KRB5PLACEHOLD_117 (-1765328267L)
|
2670
|
+
#define KRB5PLACEHOLD_118 (-1765328266L)
|
2671
|
+
#define KRB5PLACEHOLD_119 (-1765328265L)
|
2672
|
+
#define KRB5PLACEHOLD_120 (-1765328264L)
|
2673
|
+
#define KRB5PLACEHOLD_121 (-1765328263L)
|
2674
|
+
#define KRB5PLACEHOLD_122 (-1765328262L)
|
2675
|
+
#define KRB5PLACEHOLD_123 (-1765328261L)
|
2676
|
+
#define KRB5PLACEHOLD_124 (-1765328260L)
|
2677
|
+
#define KRB5PLACEHOLD_125 (-1765328259L)
|
2678
|
+
#define KRB5PLACEHOLD_126 (-1765328258L)
|
2679
|
+
#define KRB5PLACEHOLD_127 (-1765328257L)
|
2680
|
+
#define KRB5_ERR_RCSID (-1765328256L)
|
2681
|
+
#define KRB5_LIBOS_BADLOCKFLAG (-1765328255L)
|
2682
|
+
#define KRB5_LIBOS_CANTREADPWD (-1765328254L)
|
2683
|
+
#define KRB5_LIBOS_BADPWDMATCH (-1765328253L)
|
2684
|
+
#define KRB5_LIBOS_PWDINTR (-1765328252L)
|
2685
|
+
#define KRB5_PARSE_ILLCHAR (-1765328251L)
|
2686
|
+
#define KRB5_PARSE_MALFORMED (-1765328250L)
|
2687
|
+
#define KRB5_CONFIG_CANTOPEN (-1765328249L)
|
2688
|
+
#define KRB5_CONFIG_BADFORMAT (-1765328248L)
|
2689
|
+
#define KRB5_CONFIG_NOTENUFSPACE (-1765328247L)
|
2690
|
+
#define KRB5_BADMSGTYPE (-1765328246L)
|
2691
|
+
#define KRB5_CC_BADNAME (-1765328245L)
|
2692
|
+
#define KRB5_CC_UNKNOWN_TYPE (-1765328244L)
|
2693
|
+
#define KRB5_CC_NOTFOUND (-1765328243L)
|
2694
|
+
#define KRB5_CC_END (-1765328242L)
|
2695
|
+
#define KRB5_NO_TKT_SUPPLIED (-1765328241L)
|
2696
|
+
#define KRB5KRB_AP_WRONG_PRINC (-1765328240L)
|
2697
|
+
#define KRB5KRB_AP_ERR_TKT_INVALID (-1765328239L)
|
2698
|
+
#define KRB5_PRINC_NOMATCH (-1765328238L)
|
2699
|
+
#define KRB5_KDCREP_MODIFIED (-1765328237L)
|
2700
|
+
#define KRB5_KDCREP_SKEW (-1765328236L)
|
2701
|
+
#define KRB5_IN_TKT_REALM_MISMATCH (-1765328235L)
|
2702
|
+
#define KRB5_PROG_ETYPE_NOSUPP (-1765328234L)
|
2703
|
+
#define KRB5_PROG_KEYTYPE_NOSUPP (-1765328233L)
|
2704
|
+
#define KRB5_WRONG_ETYPE (-1765328232L)
|
2705
|
+
#define KRB5_PROG_SUMTYPE_NOSUPP (-1765328231L)
|
2706
|
+
#define KRB5_REALM_UNKNOWN (-1765328230L)
|
2707
|
+
#define KRB5_SERVICE_UNKNOWN (-1765328229L)
|
2708
|
+
#define KRB5_KDC_UNREACH (-1765328228L)
|
2709
|
+
#define KRB5_NO_LOCALNAME (-1765328227L)
|
2710
|
+
#define KRB5_MUTUAL_FAILED (-1765328226L)
|
2711
|
+
#define KRB5_RC_TYPE_EXISTS (-1765328225L)
|
2712
|
+
#define KRB5_RC_MALLOC (-1765328224L)
|
2713
|
+
#define KRB5_RC_TYPE_NOTFOUND (-1765328223L)
|
2714
|
+
#define KRB5_RC_UNKNOWN (-1765328222L)
|
2715
|
+
#define KRB5_RC_REPLAY (-1765328221L)
|
2716
|
+
#define KRB5_RC_IO (-1765328220L)
|
2717
|
+
#define KRB5_RC_NOIO (-1765328219L)
|
2718
|
+
#define KRB5_RC_PARSE (-1765328218L)
|
2719
|
+
#define KRB5_RC_IO_EOF (-1765328217L)
|
2720
|
+
#define KRB5_RC_IO_MALLOC (-1765328216L)
|
2721
|
+
#define KRB5_RC_IO_PERM (-1765328215L)
|
2722
|
+
#define KRB5_RC_IO_IO (-1765328214L)
|
2723
|
+
#define KRB5_RC_IO_UNKNOWN (-1765328213L)
|
2724
|
+
#define KRB5_RC_IO_SPACE (-1765328212L)
|
2725
|
+
#define KRB5_TRANS_CANTOPEN (-1765328211L)
|
2726
|
+
#define KRB5_TRANS_BADFORMAT (-1765328210L)
|
2727
|
+
#define KRB5_LNAME_CANTOPEN (-1765328209L)
|
2728
|
+
#define KRB5_LNAME_NOTRANS (-1765328208L)
|
2729
|
+
#define KRB5_LNAME_BADFORMAT (-1765328207L)
|
2730
|
+
#define KRB5_CRYPTO_INTERNAL (-1765328206L)
|
2731
|
+
#define KRB5_KT_BADNAME (-1765328205L)
|
2732
|
+
#define KRB5_KT_UNKNOWN_TYPE (-1765328204L)
|
2733
|
+
#define KRB5_KT_NOTFOUND (-1765328203L)
|
2734
|
+
#define KRB5_KT_END (-1765328202L)
|
2735
|
+
#define KRB5_KT_NOWRITE (-1765328201L)
|
2736
|
+
#define KRB5_KT_IOERR (-1765328200L)
|
2737
|
+
#define KRB5_NO_TKT_IN_RLM (-1765328199L)
|
2738
|
+
#define KRB5DES_BAD_KEYPAR (-1765328198L)
|
2739
|
+
#define KRB5DES_WEAK_KEY (-1765328197L)
|
2740
|
+
#define KRB5_BAD_ENCTYPE (-1765328196L)
|
2741
|
+
#define KRB5_BAD_KEYSIZE (-1765328195L)
|
2742
|
+
#define KRB5_BAD_MSIZE (-1765328194L)
|
2743
|
+
#define KRB5_CC_TYPE_EXISTS (-1765328193L)
|
2744
|
+
#define KRB5_KT_TYPE_EXISTS (-1765328192L)
|
2745
|
+
#define KRB5_CC_IO (-1765328191L)
|
2746
|
+
#define KRB5_FCC_PERM (-1765328190L)
|
2747
|
+
#define KRB5_FCC_NOFILE (-1765328189L)
|
2748
|
+
#define KRB5_FCC_INTERNAL (-1765328188L)
|
2749
|
+
#define KRB5_CC_WRITE (-1765328187L)
|
2750
|
+
#define KRB5_CC_NOMEM (-1765328186L)
|
2751
|
+
#define KRB5_CC_FORMAT (-1765328185L)
|
2752
|
+
#define KRB5_CC_NOT_KTYPE (-1765328184L)
|
2753
|
+
#define KRB5_INVALID_FLAGS (-1765328183L)
|
2754
|
+
#define KRB5_NO_2ND_TKT (-1765328182L)
|
2755
|
+
#define KRB5_NOCREDS_SUPPLIED (-1765328181L)
|
2756
|
+
#define KRB5_SENDAUTH_BADAUTHVERS (-1765328180L)
|
2757
|
+
#define KRB5_SENDAUTH_BADAPPLVERS (-1765328179L)
|
2758
|
+
#define KRB5_SENDAUTH_BADRESPONSE (-1765328178L)
|
2759
|
+
#define KRB5_SENDAUTH_REJECTED (-1765328177L)
|
2760
|
+
#define KRB5_PREAUTH_BAD_TYPE (-1765328176L)
|
2761
|
+
#define KRB5_PREAUTH_NO_KEY (-1765328175L)
|
2762
|
+
#define KRB5_PREAUTH_FAILED (-1765328174L)
|
2763
|
+
#define KRB5_RCACHE_BADVNO (-1765328173L)
|
2764
|
+
#define KRB5_CCACHE_BADVNO (-1765328172L)
|
2765
|
+
#define KRB5_KEYTAB_BADVNO (-1765328171L)
|
2766
|
+
#define KRB5_PROG_ATYPE_NOSUPP (-1765328170L)
|
2767
|
+
#define KRB5_RC_REQUIRED (-1765328169L)
|
2768
|
+
#define KRB5_ERR_BAD_HOSTNAME (-1765328168L)
|
2769
|
+
#define KRB5_ERR_HOST_REALM_UNKNOWN (-1765328167L)
|
2770
|
+
#define KRB5_SNAME_UNSUPP_NAMETYPE (-1765328166L)
|
2771
|
+
#define KRB5KRB_AP_ERR_V4_REPLY (-1765328165L)
|
2772
|
+
#define KRB5_REALM_CANT_RESOLVE (-1765328164L)
|
2773
|
+
#define KRB5_TKT_NOT_FORWARDABLE (-1765328163L)
|
2774
|
+
#define KRB5_FWD_BAD_PRINCIPAL (-1765328162L)
|
2775
|
+
#define KRB5_GET_IN_TKT_LOOP (-1765328161L)
|
2776
|
+
#define KRB5_CONFIG_NODEFREALM (-1765328160L)
|
2777
|
+
#define KRB5_SAM_UNSUPPORTED (-1765328159L)
|
2778
|
+
#define KRB5_SAM_INVALID_ETYPE (-1765328158L)
|
2779
|
+
#define KRB5_SAM_NO_CHECKSUM (-1765328157L)
|
2780
|
+
#define KRB5_SAM_BAD_CHECKSUM (-1765328156L)
|
2781
|
+
#define KRB5_KT_NAME_TOOLONG (-1765328155L)
|
2782
|
+
#define KRB5_KT_KVNONOTFOUND (-1765328154L)
|
2783
|
+
#define KRB5_APPL_EXPIRED (-1765328153L)
|
2784
|
+
#define KRB5_LIB_EXPIRED (-1765328152L)
|
2785
|
+
#define KRB5_CHPW_PWDNULL (-1765328151L)
|
2786
|
+
#define KRB5_CHPW_FAIL (-1765328150L)
|
2787
|
+
#define KRB5_KT_FORMAT (-1765328149L)
|
2788
|
+
#define KRB5_NOPERM_ETYPE (-1765328148L)
|
2789
|
+
#define KRB5_CONFIG_ETYPE_NOSUPP (-1765328147L)
|
2790
|
+
#define KRB5_OBSOLETE_FN (-1765328146L)
|
2791
|
+
#define KRB5_EAI_FAIL (-1765328145L)
|
2792
|
+
#define KRB5_EAI_NODATA (-1765328144L)
|
2793
|
+
#define KRB5_EAI_NONAME (-1765328143L)
|
2794
|
+
#define KRB5_EAI_SERVICE (-1765328142L)
|
2795
|
+
#define KRB5_ERR_NUMERIC_REALM (-1765328141L)
|
2796
|
+
#define KRB5_ERR_BAD_S2K_PARAMS (-1765328140L)
|
2797
|
+
#define KRB5_ERR_NO_SERVICE (-1765328139L)
|
2798
|
+
#define KRB5_CC_READONLY (-1765328138L)
|
2799
|
+
#define KRB5_CC_NOSUPP (-1765328137L)
|
2800
|
+
#define KRB5_DELTAT_BADFORMAT (-1765328136L)
|
2801
|
+
#define ERROR_TABLE_BASE_krb5 (-1765328384L)
|
2802
|
+
|
2803
|
+
extern const struct error_table et_krb5_error_table;
|
2804
|
+
|
2805
|
+
#if !defined(_WIN32)
|
2806
|
+
/* for compatibility with older versions... */
|
2807
|
+
extern void initialize_krb5_error_table (void) /*@modifies internalState@*/;
|
2808
|
+
#else
|
2809
|
+
#define initialize_krb5_error_table()
|
2810
|
+
#endif
|
2811
|
+
|
2812
|
+
#if !defined(_WIN32)
|
2813
|
+
#define init_krb5_err_tbl initialize_krb5_error_table
|
2814
|
+
#define krb5_err_base ERROR_TABLE_BASE_krb5
|
2815
|
+
#endif
|
2816
|
+
/*
|
2817
|
+
* ettmp99777.h:
|
2818
|
+
* This file is automatically generated; please do not edit it.
|
2819
|
+
*/
|
2820
|
+
|
2821
|
+
#include <com_err.h>
|
2822
|
+
|
2823
|
+
#define KRB5_KDB_RCSID (-1780008448L)
|
2824
|
+
#define KRB5_KDB_INUSE (-1780008447L)
|
2825
|
+
#define KRB5_KDB_UK_SERROR (-1780008446L)
|
2826
|
+
#define KRB5_KDB_UK_RERROR (-1780008445L)
|
2827
|
+
#define KRB5_KDB_UNAUTH (-1780008444L)
|
2828
|
+
#define KRB5_KDB_NOENTRY (-1780008443L)
|
2829
|
+
#define KRB5_KDB_ILL_WILDCARD (-1780008442L)
|
2830
|
+
#define KRB5_KDB_DB_INUSE (-1780008441L)
|
2831
|
+
#define KRB5_KDB_DB_CHANGED (-1780008440L)
|
2832
|
+
#define KRB5_KDB_TRUNCATED_RECORD (-1780008439L)
|
2833
|
+
#define KRB5_KDB_RECURSIVELOCK (-1780008438L)
|
2834
|
+
#define KRB5_KDB_NOTLOCKED (-1780008437L)
|
2835
|
+
#define KRB5_KDB_BADLOCKMODE (-1780008436L)
|
2836
|
+
#define KRB5_KDB_DBNOTINITED (-1780008435L)
|
2837
|
+
#define KRB5_KDB_DBINITED (-1780008434L)
|
2838
|
+
#define KRB5_KDB_ILLDIRECTION (-1780008433L)
|
2839
|
+
#define KRB5_KDB_NOMASTERKEY (-1780008432L)
|
2840
|
+
#define KRB5_KDB_BADMASTERKEY (-1780008431L)
|
2841
|
+
#define KRB5_KDB_INVALIDKEYSIZE (-1780008430L)
|
2842
|
+
#define KRB5_KDB_CANTREAD_STORED (-1780008429L)
|
2843
|
+
#define KRB5_KDB_BADSTORED_MKEY (-1780008428L)
|
2844
|
+
#define KRB5_KDB_CANTLOCK_DB (-1780008427L)
|
2845
|
+
#define KRB5_KDB_DB_CORRUPT (-1780008426L)
|
2846
|
+
#define KRB5_KDB_BAD_VERSION (-1780008425L)
|
2847
|
+
#define KRB5_KDB_BAD_SALTTYPE (-1780008424L)
|
2848
|
+
#define KRB5_KDB_BAD_ENCTYPE (-1780008423L)
|
2849
|
+
#define KRB5_KDB_BAD_CREATEFLAGS (-1780008422L)
|
2850
|
+
#define KRB5_KDB_NO_PERMITTED_KEY (-1780008421L)
|
2851
|
+
#define KRB5_KDB_NO_MATCHING_KEY (-1780008420L)
|
2852
|
+
#define ERROR_TABLE_BASE_kdb5 (-1780008448L)
|
2853
|
+
|
2854
|
+
extern const struct error_table et_kdb5_error_table;
|
2855
|
+
|
2856
|
+
#if !defined(_WIN32)
|
2857
|
+
/* for compatibility with older versions... */
|
2858
|
+
extern void initialize_kdb5_error_table (void) /*@modifies internalState@*/;
|
2859
|
+
#else
|
2860
|
+
#define initialize_kdb5_error_table()
|
2861
|
+
#endif
|
2862
|
+
|
2863
|
+
#if !defined(_WIN32)
|
2864
|
+
#define init_kdb5_err_tbl initialize_kdb5_error_table
|
2865
|
+
#define kdb5_err_base ERROR_TABLE_BASE_kdb5
|
2866
|
+
#endif
|
2867
|
+
/*
|
2868
|
+
* ettmp99803.h:
|
2869
|
+
* This file is automatically generated; please do not edit it.
|
2870
|
+
*/
|
2871
|
+
|
2872
|
+
#include <com_err.h>
|
2873
|
+
|
2874
|
+
#define KV5M_NONE (-1760647424L)
|
2875
|
+
#define KV5M_PRINCIPAL (-1760647423L)
|
2876
|
+
#define KV5M_DATA (-1760647422L)
|
2877
|
+
#define KV5M_KEYBLOCK (-1760647421L)
|
2878
|
+
#define KV5M_CHECKSUM (-1760647420L)
|
2879
|
+
#define KV5M_ENCRYPT_BLOCK (-1760647419L)
|
2880
|
+
#define KV5M_ENC_DATA (-1760647418L)
|
2881
|
+
#define KV5M_CRYPTOSYSTEM_ENTRY (-1760647417L)
|
2882
|
+
#define KV5M_CS_TABLE_ENTRY (-1760647416L)
|
2883
|
+
#define KV5M_CHECKSUM_ENTRY (-1760647415L)
|
2884
|
+
#define KV5M_AUTHDATA (-1760647414L)
|
2885
|
+
#define KV5M_TRANSITED (-1760647413L)
|
2886
|
+
#define KV5M_ENC_TKT_PART (-1760647412L)
|
2887
|
+
#define KV5M_TICKET (-1760647411L)
|
2888
|
+
#define KV5M_AUTHENTICATOR (-1760647410L)
|
2889
|
+
#define KV5M_TKT_AUTHENT (-1760647409L)
|
2890
|
+
#define KV5M_CREDS (-1760647408L)
|
2891
|
+
#define KV5M_LAST_REQ_ENTRY (-1760647407L)
|
2892
|
+
#define KV5M_PA_DATA (-1760647406L)
|
2893
|
+
#define KV5M_KDC_REQ (-1760647405L)
|
2894
|
+
#define KV5M_ENC_KDC_REP_PART (-1760647404L)
|
2895
|
+
#define KV5M_KDC_REP (-1760647403L)
|
2896
|
+
#define KV5M_ERROR (-1760647402L)
|
2897
|
+
#define KV5M_AP_REQ (-1760647401L)
|
2898
|
+
#define KV5M_AP_REP (-1760647400L)
|
2899
|
+
#define KV5M_AP_REP_ENC_PART (-1760647399L)
|
2900
|
+
#define KV5M_RESPONSE (-1760647398L)
|
2901
|
+
#define KV5M_SAFE (-1760647397L)
|
2902
|
+
#define KV5M_PRIV (-1760647396L)
|
2903
|
+
#define KV5M_PRIV_ENC_PART (-1760647395L)
|
2904
|
+
#define KV5M_CRED (-1760647394L)
|
2905
|
+
#define KV5M_CRED_INFO (-1760647393L)
|
2906
|
+
#define KV5M_CRED_ENC_PART (-1760647392L)
|
2907
|
+
#define KV5M_PWD_DATA (-1760647391L)
|
2908
|
+
#define KV5M_ADDRESS (-1760647390L)
|
2909
|
+
#define KV5M_KEYTAB_ENTRY (-1760647389L)
|
2910
|
+
#define KV5M_CONTEXT (-1760647388L)
|
2911
|
+
#define KV5M_OS_CONTEXT (-1760647387L)
|
2912
|
+
#define KV5M_ALT_METHOD (-1760647386L)
|
2913
|
+
#define KV5M_ETYPE_INFO_ENTRY (-1760647385L)
|
2914
|
+
#define KV5M_DB_CONTEXT (-1760647384L)
|
2915
|
+
#define KV5M_AUTH_CONTEXT (-1760647383L)
|
2916
|
+
#define KV5M_KEYTAB (-1760647382L)
|
2917
|
+
#define KV5M_RCACHE (-1760647381L)
|
2918
|
+
#define KV5M_CCACHE (-1760647380L)
|
2919
|
+
#define KV5M_PREAUTH_OPS (-1760647379L)
|
2920
|
+
#define KV5M_SAM_CHALLENGE (-1760647378L)
|
2921
|
+
#define KV5M_SAM_CHALLENGE_2 (-1760647377L)
|
2922
|
+
#define KV5M_SAM_KEY (-1760647376L)
|
2923
|
+
#define KV5M_ENC_SAM_RESPONSE_ENC (-1760647375L)
|
2924
|
+
#define KV5M_ENC_SAM_RESPONSE_ENC_2 (-1760647374L)
|
2925
|
+
#define KV5M_SAM_RESPONSE (-1760647373L)
|
2926
|
+
#define KV5M_SAM_RESPONSE_2 (-1760647372L)
|
2927
|
+
#define KV5M_PREDICTED_SAM_RESPONSE (-1760647371L)
|
2928
|
+
#define KV5M_PASSWD_PHRASE_ELEMENT (-1760647370L)
|
2929
|
+
#define KV5M_GSS_OID (-1760647369L)
|
2930
|
+
#define KV5M_GSS_QUEUE (-1760647368L)
|
2931
|
+
#define ERROR_TABLE_BASE_kv5m (-1760647424L)
|
2932
|
+
|
2933
|
+
extern const struct error_table et_kv5m_error_table;
|
2934
|
+
|
2935
|
+
#if !defined(_WIN32)
|
2936
|
+
/* for compatibility with older versions... */
|
2937
|
+
extern void initialize_kv5m_error_table (void) /*@modifies internalState@*/;
|
2938
|
+
#else
|
2939
|
+
#define initialize_kv5m_error_table()
|
2940
|
+
#endif
|
2941
|
+
|
2942
|
+
#if !defined(_WIN32)
|
2943
|
+
#define init_kv5m_err_tbl initialize_kv5m_error_table
|
2944
|
+
#define kv5m_err_base ERROR_TABLE_BASE_kv5m
|
2945
|
+
#endif
|
2946
|
+
/*
|
2947
|
+
* ettmp99816.h:
|
2948
|
+
* This file is automatically generated; please do not edit it.
|
2949
|
+
*/
|
2950
|
+
|
2951
|
+
#include <com_err.h>
|
2952
|
+
|
2953
|
+
#define KRB524_BADKEY (-1750206208L)
|
2954
|
+
#define KRB524_BADADDR (-1750206207L)
|
2955
|
+
#define KRB524_BADPRINC (-1750206206L)
|
2956
|
+
#define KRB524_BADREALM (-1750206205L)
|
2957
|
+
#define KRB524_V4ERR (-1750206204L)
|
2958
|
+
#define KRB524_ENCFULL (-1750206203L)
|
2959
|
+
#define KRB524_DECEMPTY (-1750206202L)
|
2960
|
+
#define KRB524_NOTRESP (-1750206201L)
|
2961
|
+
#define KRB524_KRB4_DISABLED (-1750206200L)
|
2962
|
+
#define ERROR_TABLE_BASE_k524 (-1750206208L)
|
2963
|
+
|
2964
|
+
extern const struct error_table et_k524_error_table;
|
2965
|
+
|
2966
|
+
#if !defined(_WIN32)
|
2967
|
+
/* for compatibility with older versions... */
|
2968
|
+
extern void initialize_k524_error_table (void) /*@modifies internalState@*/;
|
2969
|
+
#else
|
2970
|
+
#define initialize_k524_error_table()
|
2971
|
+
#endif
|
2972
|
+
|
2973
|
+
#if !defined(_WIN32)
|
2974
|
+
#define init_k524_err_tbl initialize_k524_error_table
|
2975
|
+
#define k524_err_base ERROR_TABLE_BASE_k524
|
2976
|
+
#endif
|
2977
|
+
/*
|
2978
|
+
* ettmp99764.h:
|
2979
|
+
* This file is automatically generated; please do not edit it.
|
2980
|
+
*/
|
2981
|
+
|
2982
|
+
#include <com_err.h>
|
2983
|
+
|
2984
|
+
#define ASN1_BAD_TIMEFORMAT (1859794432L)
|
2985
|
+
#define ASN1_MISSING_FIELD (1859794433L)
|
2986
|
+
#define ASN1_MISPLACED_FIELD (1859794434L)
|
2987
|
+
#define ASN1_TYPE_MISMATCH (1859794435L)
|
2988
|
+
#define ASN1_OVERFLOW (1859794436L)
|
2989
|
+
#define ASN1_OVERRUN (1859794437L)
|
2990
|
+
#define ASN1_BAD_ID (1859794438L)
|
2991
|
+
#define ASN1_BAD_LENGTH (1859794439L)
|
2992
|
+
#define ASN1_BAD_FORMAT (1859794440L)
|
2993
|
+
#define ASN1_PARSE_ERROR (1859794441L)
|
2994
|
+
#define ASN1_BAD_GMTIME (1859794442L)
|
2995
|
+
#define ASN1_MISMATCH_INDEF (1859794443L)
|
2996
|
+
#define ASN1_MISSING_EOC (1859794444L)
|
2997
|
+
#define ERROR_TABLE_BASE_asn1 (1859794432L)
|
2998
|
+
|
2999
|
+
extern const struct error_table et_asn1_error_table;
|
3000
|
+
|
3001
|
+
#if !defined(_WIN32)
|
3002
|
+
/* for compatibility with older versions... */
|
3003
|
+
extern void initialize_asn1_error_table (void) /*@modifies internalState@*/;
|
3004
|
+
#else
|
3005
|
+
#define initialize_asn1_error_table()
|
3006
|
+
#endif
|
3007
|
+
|
3008
|
+
#if !defined(_WIN32)
|
3009
|
+
#define init_asn1_err_tbl initialize_asn1_error_table
|
3010
|
+
#define asn1_err_base ERROR_TABLE_BASE_asn1
|
3011
|
+
#endif
|