Lines Matching defs:hostkeys

60 struct hostkeys {
232 struct hostkeys *
235 struct hostkeys *ret = xcalloc(1, sizeof(*ret));
242 load_hostkeys(struct hostkeys *hostkeys, const char *host, const char *path)
312 hostkeys->entries = xrealloc(hostkeys->entries,
313 hostkeys->num_entries + 1, sizeof(*hostkeys->entries));
314 hostkeys->entries[hostkeys->num_entries].host = xstrdup(host);
315 hostkeys->entries[hostkeys->num_entries].file = xstrdup(path);
316 hostkeys->entries[hostkeys->num_entries].line = linenum;
317 hostkeys->entries[hostkeys->num_entries].key = key;
318 hostkeys->entries[hostkeys->num_entries].marker = marker;
319 hostkeys->num_entries++;
328 free_hostkeys(struct hostkeys *hostkeys)
332 for (i = 0; i < hostkeys->num_entries; i++) {
333 free(hostkeys->entries[i].host);
334 free(hostkeys->entries[i].file);
335 key_free(hostkeys->entries[i].key);
336 explicit_bzero(hostkeys->entries + i, sizeof(*hostkeys->entries));
338 free(hostkeys->entries);
339 explicit_bzero(hostkeys, sizeof(*hostkeys));
340 free(hostkeys);
344 check_key_not_revoked(struct hostkeys *hostkeys, Key *k)
349 for (i = 0; i < hostkeys->num_entries; i++) {
350 if (hostkeys->entries[i].marker != MRK_REVOKE)
352 if (key_equal_public(k, hostkeys->entries[i].key))
356 hostkeys->entries[i].key))
378 check_hostkeys_by_key_or_type(struct hostkeys *hostkeys,
390 for (i = 0; i < hostkeys->num_entries; i++) {
391 if (proto == 1 && hostkeys->entries[i].key->type != KEY_RSA1)
393 if (proto == 2 && hostkeys->entries[i].key->type == KEY_RSA1)
395 if (hostkeys->entries[i].marker != want_marker)
398 if (hostkeys->entries[i].key->type != keytype)
402 *found = hostkeys->entries + i;
403 k = hostkeys->entries[i].key;
408 hostkeys->entries[i].key)) {
412 *found = hostkeys->entries + i;
416 if (key_equal(k, hostkeys->entries[i].key)) {
419 *found = hostkeys->entries + i;
425 *found = hostkeys->entries + i;
428 if (check_key_not_revoked(hostkeys, k) != 0) {
437 check_key_in_hostkeys(struct hostkeys *hostkeys, Key *key,
442 return check_hostkeys_by_key_or_type(hostkeys, key, 0, found);
446 lookup_key_in_hostkeys_by_type(struct hostkeys *hostkeys, int keytype,
449 return (check_hostkeys_by_key_or_type(hostkeys, NULL, keytype,