New upstream release and new maintainer
[quagga-debian.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 */