Compilation fix on Mingw32.
[elinks.git] / src / osdep / getifaddrs.h
blob4966c034b8c01a9ae93d6247227b7aea86f71f99
1 #ifndef EL__OSDEP_GETIFADDRS_H
2 #define EL__OSDEP_GETIFADDRS_H
4 #ifdef HAVE_CONFIG_H
5 #include "config.h"
6 #endif
8 #ifndef HAVE_GETIFADDRS
9 /* ELinksification by Zas.
10 * This file was borrowed from dkftpbench-0.45 sources (http://www.kegel.com/dkftpbench). */
13 * Copyright (c) 2000 Kungliga Tekniska Högskolan
14 * (Royal Institute of Technology, Stockholm, Sweden).
15 * All rights reserved.
17 * Redistribution and use in source and binary forms, with or without
18 * modification, are permitted provided that the following conditions
19 * are met:
21 * 1. Redistributions of source code must retain the above copyright
22 * notice, this list of conditions and the following disclaimer.
24 * 2. Redistributions in binary form must reproduce the above copyright
25 * notice, this list of conditions and the following disclaimer in the
26 * documentation and/or other materials provided with the distribution.
28 * 3. Neither the name of the Institute nor the names of its contributors
29 * may be used to endorse or promote products derived from this software
30 * without specific prior written permission.
32 * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
33 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
34 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
35 * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
36 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
37 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
38 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
39 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
40 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
41 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
42 * SUCH DAMAGE.
47 * the interface is defined in terms of the fields below, and this is
48 * sometimes #define'd, so there seems to be no simple way of solving
49 * this and this seemed the best. */
51 #undef ifa_dstaddr
53 struct ifaddrs {
54 struct ifaddrs *ifa_next;
55 char *ifa_name;
56 unsigned int ifa_flags;
57 struct sockaddr *ifa_addr;
58 struct sockaddr *ifa_netmask;
59 struct sockaddr *ifa_dstaddr;
60 void *ifa_data;
63 #ifndef ifa_broadaddr
64 #define ifa_broadaddr ifa_dstaddr
65 #endif
67 int getifaddrs(struct ifaddrs **);
68 void freeifaddrs(struct ifaddrs *);
70 #endif /* HAVE_GETIFADDRS */
72 #endif /* EL__OSDEP_GETIFADDRS_H */