Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-src
Path: blob/main/crypto/krb5/src/include/iprop.h
34879 views
1
/*
2
* Please do not edit this file.
3
* It was generated using rpcgen.
4
*/
5
6
#ifndef _IPROP_H_RPCGEN
7
#define _IPROP_H_RPCGEN
8
9
#include <gssrpc/rpc.h>
10
11
12
#ifdef __cplusplus
13
extern "C" {
14
#endif
15
16
17
typedef struct {
18
u_int utf8str_t_len;
19
char *utf8str_t_val;
20
} utf8str_t;
21
22
typedef uint32_t kdb_sno_t;
23
24
struct kdbe_time_t {
25
uint32_t seconds;
26
uint32_t useconds;
27
};
28
typedef struct kdbe_time_t kdbe_time_t;
29
30
struct kdbe_key_t {
31
int32_t k_ver;
32
int32_t k_kvno;
33
struct {
34
u_int k_enctype_len;
35
int32_t *k_enctype_val;
36
} k_enctype;
37
struct {
38
u_int k_contents_len;
39
utf8str_t *k_contents_val;
40
} k_contents;
41
};
42
typedef struct kdbe_key_t kdbe_key_t;
43
44
struct kdbe_data_t {
45
int32_t k_magic;
46
utf8str_t k_data;
47
};
48
typedef struct kdbe_data_t kdbe_data_t;
49
50
struct kdbe_princ_t {
51
utf8str_t k_realm;
52
struct {
53
u_int k_components_len;
54
kdbe_data_t *k_components_val;
55
} k_components;
56
int32_t k_nametype;
57
};
58
typedef struct kdbe_princ_t kdbe_princ_t;
59
60
struct kdbe_tl_t {
61
int16_t tl_type;
62
struct {
63
u_int tl_data_len;
64
char *tl_data_val;
65
} tl_data;
66
};
67
typedef struct kdbe_tl_t kdbe_tl_t;
68
69
typedef struct {
70
u_int kdbe_pw_hist_t_len;
71
kdbe_key_t *kdbe_pw_hist_t_val;
72
} kdbe_pw_hist_t;
73
74
enum kdbe_attr_type_t {
75
AT_ATTRFLAGS = 0,
76
AT_MAX_LIFE = 1,
77
AT_MAX_RENEW_LIFE = 2,
78
AT_EXP = 3,
79
AT_PW_EXP = 4,
80
AT_LAST_SUCCESS = 5,
81
AT_LAST_FAILED = 6,
82
AT_FAIL_AUTH_COUNT = 7,
83
AT_PRINC = 8,
84
AT_KEYDATA = 9,
85
AT_TL_DATA = 10,
86
AT_LEN = 11,
87
AT_MOD_PRINC = 12,
88
AT_MOD_TIME = 13,
89
AT_MOD_WHERE = 14,
90
AT_PW_LAST_CHANGE = 15,
91
AT_PW_POLICY = 16,
92
AT_PW_POLICY_SWITCH = 17,
93
AT_PW_HIST_KVNO = 18,
94
AT_PW_HIST = 19
95
};
96
typedef enum kdbe_attr_type_t kdbe_attr_type_t;
97
98
struct kdbe_val_t {
99
kdbe_attr_type_t av_type;
100
union {
101
uint32_t av_attrflags;
102
uint32_t av_max_life;
103
uint32_t av_max_renew_life;
104
uint32_t av_exp;
105
uint32_t av_pw_exp;
106
uint32_t av_last_success;
107
uint32_t av_last_failed;
108
uint32_t av_fail_auth_count;
109
kdbe_princ_t av_princ;
110
struct {
111
u_int av_keydata_len;
112
kdbe_key_t *av_keydata_val;
113
} av_keydata;
114
struct {
115
u_int av_tldata_len;
116
kdbe_tl_t *av_tldata_val;
117
} av_tldata;
118
int16_t av_len;
119
uint32_t av_pw_last_change;
120
kdbe_princ_t av_mod_princ;
121
uint32_t av_mod_time;
122
utf8str_t av_mod_where;
123
utf8str_t av_pw_policy;
124
bool_t av_pw_policy_switch;
125
uint32_t av_pw_hist_kvno;
126
struct {
127
u_int av_pw_hist_len;
128
kdbe_pw_hist_t *av_pw_hist_val;
129
} av_pw_hist;
130
struct {
131
u_int av_extension_len;
132
char *av_extension_val;
133
} av_extension;
134
} kdbe_val_t_u;
135
};
136
typedef struct kdbe_val_t kdbe_val_t;
137
138
typedef struct {
139
u_int kdbe_t_len;
140
kdbe_val_t *kdbe_t_val;
141
} kdbe_t;
142
143
struct kdb_incr_update_t {
144
utf8str_t kdb_princ_name;
145
kdb_sno_t kdb_entry_sno;
146
kdbe_time_t kdb_time;
147
kdbe_t kdb_update;
148
bool_t kdb_deleted;
149
bool_t kdb_commit;
150
struct {
151
u_int kdb_kdcs_seen_by_len;
152
utf8str_t *kdb_kdcs_seen_by_val;
153
} kdb_kdcs_seen_by;
154
struct {
155
u_int kdb_futures_len;
156
char *kdb_futures_val;
157
} kdb_futures;
158
};
159
typedef struct kdb_incr_update_t kdb_incr_update_t;
160
161
typedef struct {
162
u_int kdb_ulog_t_len;
163
kdb_incr_update_t *kdb_ulog_t_val;
164
} kdb_ulog_t;
165
166
enum update_status_t {
167
UPDATE_OK = 0,
168
UPDATE_ERROR = 1,
169
UPDATE_FULL_RESYNC_NEEDED = 2,
170
UPDATE_BUSY = 3,
171
UPDATE_NIL = 4,
172
UPDATE_PERM_DENIED = 5
173
};
174
typedef enum update_status_t update_status_t;
175
176
struct kdb_last_t {
177
kdb_sno_t last_sno;
178
kdbe_time_t last_time;
179
};
180
typedef struct kdb_last_t kdb_last_t;
181
182
struct kdb_incr_result_t {
183
kdb_last_t lastentry;
184
kdb_ulog_t updates;
185
update_status_t ret;
186
};
187
typedef struct kdb_incr_result_t kdb_incr_result_t;
188
189
struct kdb_fullresync_result_t {
190
kdb_last_t lastentry;
191
update_status_t ret;
192
};
193
typedef struct kdb_fullresync_result_t kdb_fullresync_result_t;
194
195
#define KRB5_IPROP_PROG 100423
196
#define KRB5_IPROP_VERS 1
197
198
#if defined(__STDC__) || defined(__cplusplus)
199
#define IPROP_NULL 0
200
extern void * iprop_null_1(void *, CLIENT *);
201
extern void * iprop_null_1_svc(void *, struct svc_req *);
202
#define IPROP_GET_UPDATES 1
203
extern kdb_incr_result_t * iprop_get_updates_1(kdb_last_t *, CLIENT *);
204
extern kdb_incr_result_t * iprop_get_updates_1_svc(kdb_last_t *, struct svc_req *);
205
#define IPROP_FULL_RESYNC 2
206
extern kdb_fullresync_result_t * iprop_full_resync_1(void *, CLIENT *);
207
extern kdb_fullresync_result_t * iprop_full_resync_1_svc(void *, struct svc_req *);
208
#define IPROP_FULL_RESYNC_EXT 3
209
extern kdb_fullresync_result_t * iprop_full_resync_ext_1(uint32_t *, CLIENT *);
210
extern kdb_fullresync_result_t * iprop_full_resync_ext_1_svc(uint32_t *, struct svc_req *);
211
extern int krb5_iprop_prog_1_freeresult (SVCXPRT *, xdrproc_t, caddr_t);
212
213
#else /* K&R C */
214
#define IPROP_NULL 0
215
extern void * iprop_null_1();
216
extern void * iprop_null_1_svc();
217
#define IPROP_GET_UPDATES 1
218
extern kdb_incr_result_t * iprop_get_updates_1();
219
extern kdb_incr_result_t * iprop_get_updates_1_svc();
220
#define IPROP_FULL_RESYNC 2
221
extern kdb_fullresync_result_t * iprop_full_resync_1();
222
extern kdb_fullresync_result_t * iprop_full_resync_1_svc();
223
#define IPROP_FULL_RESYNC_EXT 3
224
extern kdb_fullresync_result_t * iprop_full_resync_ext_1(uint32_t *, CLIENT *);
225
extern kdb_fullresync_result_t * iprop_full_resync_ext_1_svc(uint32_t *, struct svc_req *);
226
extern int krb5_iprop_prog_1_freeresult ();
227
#endif /* K&R C */
228
229
/* the xdr functions */
230
231
#if defined(__STDC__) || defined(__cplusplus)
232
extern bool_t xdr_utf8str_t (XDR *, utf8str_t*);
233
extern bool_t xdr_kdb_sno_t (XDR *, kdb_sno_t*);
234
extern bool_t xdr_kdbe_time_t (XDR *, kdbe_time_t*);
235
extern bool_t xdr_kdbe_key_t (XDR *, kdbe_key_t*);
236
extern bool_t xdr_kdbe_data_t (XDR *, kdbe_data_t*);
237
extern bool_t xdr_kdbe_princ_t (XDR *, kdbe_princ_t*);
238
extern bool_t xdr_kdbe_tl_t (XDR *, kdbe_tl_t*);
239
extern bool_t xdr_kdbe_pw_hist_t (XDR *, kdbe_pw_hist_t*);
240
extern bool_t xdr_kdbe_attr_type_t (XDR *, kdbe_attr_type_t*);
241
extern bool_t xdr_kdbe_val_t (XDR *, kdbe_val_t*);
242
extern bool_t xdr_kdbe_t (XDR *, kdbe_t*);
243
extern bool_t xdr_kdb_incr_update_t (XDR *, kdb_incr_update_t*);
244
extern bool_t xdr_kdb_ulog_t (XDR *, kdb_ulog_t*);
245
extern bool_t xdr_update_status_t (XDR *, update_status_t*);
246
extern bool_t xdr_kdb_last_t (XDR *, kdb_last_t*);
247
extern bool_t xdr_kdb_incr_result_t (XDR *, kdb_incr_result_t*);
248
extern bool_t xdr_kdb_fullresync_result_t (XDR *, kdb_fullresync_result_t*);
249
250
#else /* K&R C */
251
extern bool_t xdr_utf8str_t ();
252
extern bool_t xdr_kdb_sno_t ();
253
extern bool_t xdr_kdbe_time_t ();
254
extern bool_t xdr_kdbe_key_t ();
255
extern bool_t xdr_kdbe_data_t ();
256
extern bool_t xdr_kdbe_princ_t ();
257
extern bool_t xdr_kdbe_tl_t ();
258
extern bool_t xdr_kdbe_pw_hist_t ();
259
extern bool_t xdr_kdbe_attr_type_t ();
260
extern bool_t xdr_kdbe_val_t ();
261
extern bool_t xdr_kdbe_t ();
262
extern bool_t xdr_kdb_incr_update_t ();
263
extern bool_t xdr_kdb_ulog_t ();
264
extern bool_t xdr_update_status_t ();
265
extern bool_t xdr_kdb_last_t ();
266
extern bool_t xdr_kdb_incr_result_t ();
267
extern bool_t xdr_kdb_fullresync_result_t ();
268
269
#endif /* K&R C */
270
271
#ifdef __cplusplus
272
}
273
#endif
274
275
#endif /* !_IPROP_H_RPCGEN */
276
277