]> git.proxmox.com Git - mirror_frr.git/blob - ripngd/ripng_route.h
Merge pull request #13649 from donaldsharp/unlock_the_node_or_else
[mirror_frr.git] / ripngd / ripng_route.h
1 /*
2 * RIPng daemon
3 * Copyright (C) 1998 Kunihiro Ishiguro
4 *
5 * This file is part of GNU Zebra.
6 *
7 * GNU Zebra is free software; you can redistribute it and/or modify it
8 * under the terms of the GNU General Public License as published by the
9 * Free Software Foundation; either version 2, or (at your option) any
10 * later version.
11 *
12 * GNU Zebra is distributed in the hope that it will be useful, but
13 * WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License along
18 * with this program; see the file COPYING; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20 */
21
22 #ifndef _ZEBRA_RIPNG_ROUTE_H
23 #define _ZEBRA_RIPNG_ROUTE_H
24
25 struct ripng_aggregate {
26 /* Aggregate route count. */
27 unsigned int count;
28
29 /* Suppressed route count. */
30 unsigned int suppress;
31
32 /* Metric of this route. */
33 uint8_t metric;
34
35 /* Tag field of RIPng packet.*/
36 uint16_t tag;
37
38 /* Route-map futures - this variables can be changed. */
39 struct in6_addr nexthop_out;
40 uint8_t metric_set;
41 uint8_t metric_out;
42 uint16_t tag_out;
43 };
44
45 extern void ripng_aggregate_increment(struct agg_node *rp,
46 struct ripng_info *rinfo);
47 extern void ripng_aggregate_decrement(struct agg_node *rp,
48 struct ripng_info *rinfo);
49 extern void ripng_aggregate_decrement_list(struct agg_node *rp,
50 struct list *list);
51 extern int ripng_aggregate_add(struct prefix *p);
52 extern int ripng_aggregate_delete(struct prefix *p);
53 extern void ripng_aggregate_free(struct ripng_aggregate *aggregate);
54
55 #endif /* _ZEBRA_RIPNG_ROUTE_H */