Lines Matching +full:chg +full:- +full:int
2 * Copyright (c) 1999-2005 Kungliga Tekniska Högskolan
48 salt (- means use normal salt)
61 * These utility functions return the number of bytes written or -1, and
69 int rc; in append_string()
76 return -1; in append_string()
85 int always_encode, int lower, krb5_data *data) in append_hex()
88 int printable = 1; in append_hex()
92 p = data->data; in append_hex()
94 for (i = 0; i < data->length; i++) { in append_hex()
103 data->length, data->data); in append_hex()
104 sz = hex_encode(data->data, data->length, &p); in append_hex()
105 if (sz == -1) return sz; in append_hex()
128 return append_string(context, sp, "- "); in append_event()
129 if (ev->principal != NULL) { in append_event()
130 ret = krb5_unparse_name(context, ev->principal, &pr); in append_event()
131 if (ret) return -1; /* krb5_unparse_name() sets error info */ in append_event()
133 sz = append_string(context, sp, "%s:%s ", time2str(ev->time), in append_event()
149 unsigned int kvno, Key *key) in append_mit_key()
153 size_t key_versions = key->salt ? 2 : 1; in append_mit_key()
157 unsigned int salttype; in append_mit_key()
160 key->key.keytype, key->key.keyvalue.length + 2); in append_mit_key()
161 if (sz == -1) return sz; in append_mit_key()
162 ret = krb5_enctype_keysize(context, key->key.keytype, &decrypted_key_length); in append_mit_key()
163 if (ret) return -1; /* XXX we lose the error code */ in append_mit_key()
169 if (sz == -1) return sz; in append_mit_key()
170 sz = append_hex(context, sp, 1, 1, &key->key.keyvalue); in append_mit_key()
171 if (!key->salt) in append_mit_key()
175 if (key->salt->type == KRB5_PADATA_PW_SALT) { in append_mit_key()
182 if (ret) return -1; in append_mit_key()
183 if (k5salt.saltvalue.length == key->salt->salt.length && in append_mit_key()
184 memcmp(k5salt.saltvalue.data, key->salt->salt.data, in append_mit_key()
187 else if (key->salt->salt.length == strlen(princ->realm) && in append_mit_key()
188 memcmp(key->salt->salt.data, princ->realm, in append_mit_key()
189 key->salt->salt.length) == 0) in append_mit_key()
191 else if (key->salt->salt.length == k5salt.saltvalue.length - strlen(princ->realm) && in append_mit_key()
192 memcmp((char *)k5salt.saltvalue.data + strlen(princ->realm), in append_mit_key()
193 key->salt->salt.data, key->salt->salt.length) == 0) in append_mit_key()
198 } else if (key->salt->type == KRB5_PADATA_AFS3_SALT) { in append_mit_key()
202 key->salt->salt.length); in append_mit_key()
203 if (sz == -1) return sz; in append_mit_key()
204 return append_hex(context, sp, 1, 1, &key->salt->salt); in append_mit_key()
211 int i; in entry2string_int()
214 /* --- principal */ in entry2string_int()
215 ret = krb5_unparse_name(context, ent->principal, &p); in entry2string_int()
220 /* --- kvno */ in entry2string_int()
221 append_string(context, sp, "%d", ent->kvno); in entry2string_int()
222 /* --- keys */ in entry2string_int()
223 for(i = 0; i < ent->keys.len; i++){ in entry2string_int()
224 /* --- mkvno, keytype */ in entry2string_int()
225 if(ent->keys.val[i].mkvno) in entry2string_int()
227 *ent->keys.val[i].mkvno, in entry2string_int()
228 ent->keys.val[i].key.keytype); in entry2string_int()
231 ent->keys.val[i].key.keytype); in entry2string_int()
232 /* --- keydata */ in entry2string_int()
233 append_hex(context, sp, 0, 0, &ent->keys.val[i].key.keyvalue); in entry2string_int()
235 /* --- salt */ in entry2string_int()
236 if(ent->keys.val[i].salt){ in entry2string_int()
237 append_string(context, sp, "%u/", ent->keys.val[i].salt->type); in entry2string_int()
238 append_hex(context, sp, 0, 0, &ent->keys.val[i].salt->salt); in entry2string_int()
240 append_string(context, sp, "-"); in entry2string_int()
243 /* --- created by */ in entry2string_int()
244 append_event(context, sp, &ent->created_by); in entry2string_int()
245 /* --- modified by */ in entry2string_int()
246 append_event(context, sp, ent->modified_by); in entry2string_int()
248 /* --- valid start */ in entry2string_int()
249 if(ent->valid_start) in entry2string_int()
250 append_string(context, sp, "%s ", time2str(*ent->valid_start)); in entry2string_int()
252 append_string(context, sp, "- "); in entry2string_int()
254 /* --- valid end */ in entry2string_int()
255 if(ent->valid_end) in entry2string_int()
256 append_string(context, sp, "%s ", time2str(*ent->valid_end)); in entry2string_int()
258 append_string(context, sp, "- "); in entry2string_int()
260 /* --- password ends */ in entry2string_int()
261 if(ent->pw_end) in entry2string_int()
262 append_string(context, sp, "%s ", time2str(*ent->pw_end)); in entry2string_int()
264 append_string(context, sp, "- "); in entry2string_int()
266 /* --- max life */ in entry2string_int()
267 if(ent->max_life) in entry2string_int()
268 append_string(context, sp, "%d ", *ent->max_life); in entry2string_int()
270 append_string(context, sp, "- "); in entry2string_int()
272 /* --- max renewable life */ in entry2string_int()
273 if(ent->max_renew) in entry2string_int()
274 append_string(context, sp, "%d ", *ent->max_renew); in entry2string_int()
276 append_string(context, sp, "- "); in entry2string_int()
278 /* --- flags */ in entry2string_int()
279 append_string(context, sp, "%d ", HDBFlags2int(ent->flags)); in entry2string_int()
281 /* --- generation number */ in entry2string_int()
282 if(ent->generation) { in entry2string_int()
283 append_string(context, sp, "%s:%d:%d ", time2str(ent->generation->time), in entry2string_int()
284 ent->generation->usec, in entry2string_int()
285 ent->generation->gen); in entry2string_int()
287 append_string(context, sp, "- "); in entry2string_int()
289 /* --- extensions */ in entry2string_int()
290 if(ent->extensions && ent->extensions->len > 0) { in entry2string_int()
291 for(i = 0; i < ent->extensions->len; i++) { in entry2string_int()
296 &ent->extensions->val[i], &sz, ret); in entry2string_int()
312 ent->extensions->len - 1 != i ? ":" : ""); in entry2string_int()
316 append_string(context, sp, "-"); in entry2string_int()
336 static int
339 int a = 0; in flags_to_attr()
378 unsigned int max_life = 0; in entry2mit_string_int()
379 unsigned int max_renew = 0; in entry2mit_string_int()
391 hist_keys = &extp->data.u.hist_keys; in entry2mit_string_int()
393 for (i = 0; i < ent->keys.len;i++) { in entry2mit_string_int()
394 if (!mit_strong_etype(ent->keys.val[i].key.keytype)) in entry2mit_string_int()
399 for (i = 0; i < hist_keys->len; i++) { in entry2mit_string_int()
405 if (hist_keys->val[i].kvno >= ent->kvno) in entry2mit_string_int()
407 for (k = 0; k < hist_keys->val[i].keys.len; k++) { in entry2mit_string_int()
408 if (ent->keys.val[k].key.keytype == ETYPE_DES_CBC_MD4 || in entry2mit_string_int()
409 ent->keys.val[k].key.keytype == ETYPE_DES_CBC_MD5) in entry2mit_string_int()
416 ret = krb5_unparse_name(context, ent->principal, &p); in entry2mit_string_int()
420 flags_to_attr(ent->flags)); in entry2mit_string_int()
421 if (sz == -1) { in entry2mit_string_int()
426 if (ent->max_life) in entry2mit_string_int()
427 max_life = *ent->max_life; in entry2mit_string_int()
428 if (ent->max_renew) in entry2mit_string_int()
429 max_renew = *ent->max_renew; in entry2mit_string_int()
430 if (ent->valid_end) in entry2mit_string_int()
431 exp = *ent->valid_end; in entry2mit_string_int()
432 if (ent->pw_end) in entry2mit_string_int()
433 pwexp = *ent->pw_end; in entry2mit_string_int()
437 if (sz == -1) { in entry2mit_string_int()
442 /* Dump TL data we know: last pw chg and modified_by */ in entry2mit_string_int()
456 if (sz == -1) { in entry2mit_string_int()
461 if (sz == -1) { in entry2mit_string_int()
466 if (ent->modified_by) { in entry2mit_string_int()
468 unsigned int val; in entry2mit_string_int()
474 ptr = (unsigned char *)&ent->modified_by->time; in entry2mit_string_int()
477 d.length = sizeof (ent->modified_by->time); in entry2mit_string_int()
478 ret = krb5_unparse_name(context, ent->modified_by->principal, &modby_p); in entry2mit_string_int()
484 if (sz == -1) { in entry2mit_string_int()
489 if (sz == -1) { in entry2mit_string_int()
497 if (sz == -1) return ENOMEM; in entry2mit_string_int()
500 unsigned int val; in entry2mit_string_int()
513 if (sz == -1) { in entry2mit_string_int()
518 if (sz == -1) { in entry2mit_string_int()
526 if (sz == -1) return ENOMEM; in entry2mit_string_int()
531 * the entry's keys -- max kvno is it) in entry2mit_string_int()
533 for (i = 0; i < ent->keys.len; i++) { in entry2mit_string_int()
534 if (!mit_strong_etype(ent->keys.val[i].key.keytype)) in entry2mit_string_int()
536 sz = append_mit_key(context, sp, ent->principal, ent->kvno, in entry2mit_string_int()
537 &ent->keys.val[i]); in entry2mit_string_int()
538 if (sz == -1) return ENOMEM; in entry2mit_string_int()
540 for (i = 0; hist_keys && i < ent->kvno; i++) { in entry2mit_string_int()
544 for (k = 0; k < hist_keys->len; k++) { in entry2mit_string_int()
545 if (hist_keys->val[k].kvno != ent->kvno - i) in entry2mit_string_int()
547 for (m = 0; m < hist_keys->val[k].keys.len; m++) { in entry2mit_string_int()
548 if (ent->keys.val[k].key.keytype == ETYPE_DES_CBC_MD4 || in entry2mit_string_int()
549 ent->keys.val[k].key.keytype == ETYPE_DES_CBC_MD5) in entry2mit_string_int()
551 sz = append_mit_key(context, sp, ent->principal, in entry2mit_string_int()
552 hist_keys->val[k].kvno, in entry2mit_string_int()
553 &hist_keys->val[k].keys.val[m]); in entry2mit_string_int()
554 if (sz == -1) return ENOMEM; in entry2mit_string_int()
558 sz = append_string(context, sp, "\t-1;"); /* "extra data" */ in entry2mit_string_int()
559 if (sz == -1) return ENOMEM; in entry2mit_string_int()
599 fflush(parg->out); in hdb_print_entry()
600 sp = krb5_storage_from_fd(fileno(parg->out)); in hdb_print_entry()
606 switch (parg->fmt) { in hdb_print_entry()
608 ret = entry2string_int(context, sp, &entry->entry); in hdb_print_entry()
611 ret = entry2mit_string_int(context, sp, &entry->entry); in hdb_print_entry()