1/* key-chain for authentication. 2 * Copyright (C) 2000 Kunihiro Ishiguro 3 * 4 * This file is part of GNU Zebra. 5 * 6 * GNU Zebra is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published 8 * by the Free Software Foundation; either version 2, or (at your 9 * option) any later version. 10 * 11 * GNU Zebra is distributed in the hope that it will be useful, but 12 * WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * General Public License for more details. 15 * 16 * You should have received a copy of the GNU General Public License 17 * along with GNU Zebra; see the file COPYING. If not, write to the 18 * Free Software Foundation, Inc., 59 Temple Place - Suite 330, 19 * Boston, MA 02111-1307, USA. 20 */ 21 22#ifndef _ZEBRA_KEYCHAIN_H 23#define _ZEBRA_KEYCHAIN_H 24 25struct keychain 26{ 27 char *name; 28 29 struct list *key; 30}; 31 32struct key_range 33{ 34 time_t start; 35 time_t end; 36 37 u_char duration; 38}; 39 40struct key 41{ 42 u_int32_t index; 43 44 char *string; 45 46 struct key_range send; 47 struct key_range accept; 48}; 49 50void keychain_init (); 51struct keychain *keychain_lookup (char *); 52struct key *key_lookup_for_accept (struct keychain *, u_int32_t); 53struct key *key_match_for_accept (struct keychain *, char *); 54struct key *key_lookup_for_send (struct keychain *); 55 56#endif /* _ZEBRA_KEYCHAIN_H */ 57