1/* 2 * Copyright (C) 2001 Yasuhiro Ohara 3 * 4 * This file is part of GNU Zebra. 5 * 6 * GNU Zebra is free software; you can redistribute it and/or modify it 7 * under the terms of the GNU General Public License as published by the 8 * Free Software Foundation; either version 2, or (at your option) any 9 * 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 OSPF6_ABR_H 23#define OSPF6_ABR_H 24 25/* Inter-Area-Prefix-LSA */ 26struct ospf6_inter_area_prefix_lsa 27{ 28 u_int32_t metric; /* 12bits reserved, 20bits metric */ 29 struct ospf6_prefix prefix; /* followed by one address prefix */ 30}; 31 32/* Inter-Area-Router-LSA */ 33struct ospf6_inter_area_router_lsa 34{ 35 u_char reserved; 36 u_char options[3]; /* Optional Capability */ 37 u_int32_t metric; /* 12bits reserved, 20bits metric */ 38 u_int32_t router_id; /* Destination Router ID */ 39}; 40 41void ospf6_abr_prefix_lsa_add (struct ospf6_lsa *); 42void ospf6_abr_prefix_lsa_remove (struct ospf6_lsa *); 43void ospf6_abr_prefix_lsa_change (struct ospf6_lsa *, struct ospf6_lsa *); 44 45void ospf6_abr_abr_entry_add (struct ospf6_route_req *); 46void ospf6_abr_abr_entry_remove (struct ospf6_route_req *); 47 48void ospf6_abr_route_add (struct ospf6_route_req *); 49void ospf6_abr_route_remove (struct ospf6_route_req *); 50 51void ospf6_abr_inter_route_calculation (struct ospf6_area *); 52 53void ospf6_abr_init (); 54 55#endif /* OSPF6_ABR_H */ 56 57