blob: 726092aec47adfb1316174eb222f91e6fb270b27 [file] [log] [blame]
paul718e3742002-12-13 20:15:29 +00001/*
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
paula1ac18c2005-06-28 17:17:12 +000026extern struct connected *
paul718e3742002-12-13 20:15:29 +000027connected_check_ipv4 (struct interface *ifp, struct prefix *p);
28
paula1ac18c2005-06-28 17:17:12 +000029extern void
paul718e3742002-12-13 20:15:29 +000030connected_add_ipv4 (struct interface *ifp, int flags, struct in_addr *addr,
paula1ac18c2005-06-28 17:17:12 +000031 u_char prefixlen, struct in_addr *broad, char *label);
paul718e3742002-12-13 20:15:29 +000032
paula1ac18c2005-06-28 17:17:12 +000033extern void
paul718e3742002-12-13 20:15:29 +000034connected_delete_ipv4 (struct interface *ifp, int flags, struct in_addr *addr,
paula1ac18c2005-06-28 17:17:12 +000035 u_char prefixlen, struct in_addr *broad, char *label);
paul718e3742002-12-13 20:15:29 +000036
paula1ac18c2005-06-28 17:17:12 +000037extern void connected_up_ipv4 (struct interface *, struct connected *);
38extern void connected_down_ipv4 (struct interface *, struct connected *);
paul718e3742002-12-13 20:15:29 +000039
40#ifdef HAVE_IPV6
paula1ac18c2005-06-28 17:17:12 +000041extern struct connected *
paul718e3742002-12-13 20:15:29 +000042connected_check_ipv6 (struct interface *ifp, struct prefix *p);
43
paula1ac18c2005-06-28 17:17:12 +000044extern void
paul718e3742002-12-13 20:15:29 +000045connected_add_ipv6 (struct interface *ifp, struct in6_addr *address,
paula1ac18c2005-06-28 17:17:12 +000046 u_char prefixlen, struct in6_addr *broad);
47extern void
paul718e3742002-12-13 20:15:29 +000048connected_delete_ipv6 (struct interface *ifp, struct in6_addr *address,
paula1ac18c2005-06-28 17:17:12 +000049 u_char prefixlen, struct in6_addr *broad);
paul718e3742002-12-13 20:15:29 +000050
paula1ac18c2005-06-28 17:17:12 +000051extern void connected_up_ipv6 (struct interface *, struct connected *);
52extern void connected_down_ipv6 (struct interface *ifp, struct connected *);
paul718e3742002-12-13 20:15:29 +000053
54#endif /* HAVE_IPV6 */
55
56#endif /*_ZEBRA_CONNECTED_H */