]> git.proxmox.com Git - mirror_frr.git/blob - zebra/connected.h
zebra: fix IPv6 RA wrt interface removal (BZ#480)
[mirror_frr.git] / zebra / connected.h
1 /*
2 * Interface's address and mask.
3 * Copyright (C) 1997 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
18 * along with GNU Zebra; see the file COPYING. If not, write to the Free
19 * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
20 * 02111-1307, USA.
21 */
22
23 #ifndef _ZEBRA_CONNECTED_H
24 #define _ZEBRA_CONNECTED_H
25
26 extern struct connected *
27 connected_check (struct interface *ifp, struct prefix *p);
28
29 extern void
30 connected_add_ipv4 (struct interface *ifp, int flags, struct in_addr *addr,
31 u_char prefixlen, struct in_addr *broad,
32 const char *label);
33
34 extern void
35 connected_delete_ipv4 (struct interface *ifp, int flags, struct in_addr *addr,
36 u_char prefixlen, struct in_addr *broad);
37
38 extern void connected_up_ipv4 (struct interface *, struct connected *);
39 extern void connected_down_ipv4 (struct interface *, struct connected *);
40
41 #ifdef HAVE_IPV6
42 extern void
43 connected_add_ipv6 (struct interface *ifp, int flags, struct in6_addr *address,
44 u_char prefixlen, struct in6_addr *broad,
45 const char *label);
46 extern void
47 connected_delete_ipv6 (struct interface *ifp, struct in6_addr *address,
48 u_char prefixlen, struct in6_addr *broad);
49
50 extern void connected_up_ipv6 (struct interface *, struct connected *);
51 extern void connected_down_ipv6 (struct interface *ifp, struct connected *);
52
53 #endif /* HAVE_IPV6 */
54
55 #endif /*_ZEBRA_CONNECTED_H */