1/* BGP nexthop scan 2 Copyright (C) 2000 Kunihiro Ishiguro 3 4This file is part of GNU Zebra. 5 6GNU Zebra is free software; you can redistribute it and/or modify it 7under the terms of the GNU General Public License as published by the 8Free Software Foundation; either version 2, or (at your option) any 9later version. 10 11GNU Zebra is distributed in the hope that it will be useful, but 12WITHOUT ANY WARRANTY; without even the implied warranty of 13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14General Public License for more details. 15 16You should have received a copy of the GNU General Public License 17along with GNU Zebra; see the file COPYING. If not, write to the Free 18Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 1902111-1307, USA. */ 20 21#define BGP_SCAN_INTERVAL_DEFAULT 60 22#define BGP_IMPORT_INTERVAL_DEFAULT 15 23 24/* BGP nexthop cache value structure. */ 25struct bgp_nexthop_cache 26{ 27 /* This nexthop exists in IGP. */ 28 u_char valid; 29 30 /* Nexthop is changed. */ 31 u_char changed; 32 33 /* Nexthop is changed. */ 34 u_char metricchanged; 35 36 /* IGP route's metric. */ 37 u_int32_t metric; 38 39 /* Nexthop number and nexthop linked list.*/ 40 u_char nexthop_num; 41 struct nexthop *nexthop; 42}; 43 44void bgp_scan_init (); 45int bgp_nexthop_lookup (afi_t, struct peer *peer, struct bgp_info *, 46 int *, int *); 47void bgp_connected_add (struct connected *c); 48void bgp_connected_delete (struct connected *c); 49int bgp_multiaccess_check_v4 (struct in_addr, char *); 50int bgp_config_write_scan_time (struct vty *); 51int bgp_nexthop_check_ebgp (afi_t, struct attr *); 52int bgp_nexthop_self (afi_t, struct attr *); 53