1*da8e6ed8Sitojun /* $OpenBSD: ifaddrs.h,v 1.1 2000/02/23 06:55:59 itojun Exp $ */ 2*da8e6ed8Sitojun 3*da8e6ed8Sitojun /* 4*da8e6ed8Sitojun * Copyright (c) 1995, 1999 5*da8e6ed8Sitojun * Berkeley Software Design, Inc. All rights reserved. 6*da8e6ed8Sitojun * 7*da8e6ed8Sitojun * Redistribution and use in source and binary forms, with or without 8*da8e6ed8Sitojun * modification, are permitted provided that the following conditions 9*da8e6ed8Sitojun * are met: 10*da8e6ed8Sitojun * 1. Redistributions of source code must retain the above copyright 11*da8e6ed8Sitojun * notice, this list of conditions and the following disclaimer. 12*da8e6ed8Sitojun * 13*da8e6ed8Sitojun * THIS SOFTWARE IS PROVIDED BY Berkeley Software Design, Inc. ``AS IS'' AND 14*da8e6ed8Sitojun * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15*da8e6ed8Sitojun * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16*da8e6ed8Sitojun * ARE DISCLAIMED. IN NO EVENT SHALL Berkeley Software Design, Inc. BE LIABLE 17*da8e6ed8Sitojun * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18*da8e6ed8Sitojun * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19*da8e6ed8Sitojun * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20*da8e6ed8Sitojun * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21*da8e6ed8Sitojun * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22*da8e6ed8Sitojun * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23*da8e6ed8Sitojun * SUCH DAMAGE. 24*da8e6ed8Sitojun * 25*da8e6ed8Sitojun * BSDI ifaddrs.h,v 2.4 1999/03/15 20:59:28 jch Exp 26*da8e6ed8Sitojun */ 27*da8e6ed8Sitojun 28*da8e6ed8Sitojun #ifndef _IFADDRS_H_ 29*da8e6ed8Sitojun #define _IFADDRS_H_ 30*da8e6ed8Sitojun 31*da8e6ed8Sitojun struct ifaddrs { 32*da8e6ed8Sitojun struct ifaddrs *ifa_next; 33*da8e6ed8Sitojun char *ifa_name; 34*da8e6ed8Sitojun u_int ifa_flags; 35*da8e6ed8Sitojun struct sockaddr *ifa_addr; 36*da8e6ed8Sitojun struct sockaddr *ifa_netmask; 37*da8e6ed8Sitojun struct sockaddr *ifa_dstaddr; 38*da8e6ed8Sitojun void *ifa_data; 39*da8e6ed8Sitojun }; 40*da8e6ed8Sitojun 41*da8e6ed8Sitojun /* 42*da8e6ed8Sitojun * This may have been defined in <net/if.h>. Note that if <net/if.h> is 43*da8e6ed8Sitojun * to be included it must be included before this header file. 44*da8e6ed8Sitojun */ 45*da8e6ed8Sitojun #ifndef ifa_broadaddr 46*da8e6ed8Sitojun #define ifa_broadaddr ifa_dstaddr /* broadcast address interface */ 47*da8e6ed8Sitojun #endif 48*da8e6ed8Sitojun 49*da8e6ed8Sitojun #include <sys/cdefs.h> 50*da8e6ed8Sitojun 51*da8e6ed8Sitojun __BEGIN_DECLS 52*da8e6ed8Sitojun extern int getifaddrs __P((struct ifaddrs **)); 53*da8e6ed8Sitojun __END_DECLS 54*da8e6ed8Sitojun 55*da8e6ed8Sitojun #endif 56