3339b8b087902d75db48ef98dfe6dd590259ba3c
[dragonfly.git] / usr.sbin / named / include / lwres / platform.h
1 /*
2  * Copyright (C) 2000, 2001  Internet Software Consortium.
3  *
4  * Permission to use, copy, modify, and distribute this software for any
5  * purpose with or without fee is hereby granted, provided that the above
6  * copyright notice and this permission notice appear in all copies.
7  *
8  * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
9  * DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
10  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
11  * INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
12  * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
13  * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
14  * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
15  * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16  */
17
18 /* $Id: platform.h.in,v 1.12.2.1 2001/11/02 00:20:10 marka Exp $ */
19 /* $DragonFly: src/usr.sbin/named/include/lwres/platform.h,v 1.1 2004/05/27 18:15:42 dillon Exp $ */
20
21 #ifndef LWRES_PLATFORM_H
22 #define LWRES_PLATFORM_H 1
23
24 /*****
25  ***** Platform-dependent defines.
26  *****/
27
28 /***
29  *** Network.
30  ***/
31
32 /*
33  * Define if this system needs the <netinet/in6.h> header file for IPv6.
34  */
35 #undef LWRES_PLATFORM_NEEDNETINETIN6H
36
37 /*
38  * Define if this system needs the <netinet6/in6.h> header file for IPv6.
39  */
40 #undef LWRES_PLATFORM_NEEDNETINET6IN6H
41
42 /*
43  * If sockaddrs on this system have an sa_len field, LWRES_PLATFORM_HAVESALEN
44  * will be defined.
45  */
46 #define LWRES_PLATFORM_HAVESALEN 1
47
48 /*
49  * If this system has the IPv6 structure definitions, LWRES_PLATFORM_HAVEIPV6
50  * will be defined.
51  */
52 #define LWRES_PLATFORM_HAVEIPV6 1
53
54 /*
55  * If this system is missing in6addr_any, LWRES_PLATFORM_NEEDIN6ADDRANY will
56  * be defined.
57  */
58 #undef LWRES_PLATFORM_NEEDIN6ADDRANY
59
60 /*
61  * If this system is missing in6addr_loopback, 
62  * LWRES_PLATFORM_NEEDIN6ADDRLOOPBACK will be defined.
63  */
64 #undef LWRES_PLATFORM_NEEDIN6ADDRLOOPBACK
65
66 /*
67  * If this system has in_addr6, rather than in6_addr,
68  * LWRES_PLATFORM_HAVEINADDR6 will be defined.
69  */
70 #undef LWRES_PLATFORM_HAVEINADDR6
71
72 /*
73  * Defined if unistd.h does not cause fd_set to be delared.
74  */
75 #undef LWRES_PLATFORM_NEEDSYSSELECTH
76
77 /*
78  * Used to control how extern data is linked; needed for Win32 platforms.
79  */
80 #undef LWRES_PLATFORM_USEDECLSPEC
81
82 #ifndef LWRES_PLATFORM_USEDECLSPEC
83 #define LIBLWRES_EXTERNAL_DATA
84 #else
85 #ifdef LIBLWRES_EXPORTS
86 #define LIBLWRES_EXTERNAL_DATA __declspec(dllexport)
87 #else
88 #define LIBLWRES_EXTERNAL_DATA __declspec(dllimport)
89 #endif
90 #endif
91
92 #endif /* LWRES_PLATFORM_H */