1/* $FreeBSD$ */ 2 3/* 4 * Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC") 5 * Copyright (C) 2000, 2001 Internet Software Consortium. 6 * 7 * Permission to use, copy, modify, and/or distribute this software for any 8 * purpose with or without fee is hereby granted, provided that the above 9 * copyright notice and this permission notice appear in all copies. 10 * 11 * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH 12 * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY 13 * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, 14 * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 15 * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE 16 * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 17 * PERFORMANCE OF THIS SOFTWARE. 18 */ 19 20/* $Id: platform.h.in,v 1.21 2007/06/19 23:47:23 tbox Exp $ */ 21 22/*! \file */ 23 24#ifndef LWRES_PLATFORM_H 25#define LWRES_PLATFORM_H 1 26 27/***** 28 ***** Platform-dependent defines. 29 *****/ 30 31/*** 32 *** Network. 33 ***/ 34 35/* 36 * Define if this system needs the <netinet/in6.h> header file for IPv6. 37 */ 38#undef LWRES_PLATFORM_NEEDNETINETIN6H 39 40/* 41 * Define if this system needs the <netinet6/in6.h> header file for IPv6. 42 */ 43#undef LWRES_PLATFORM_NEEDNETINET6IN6H 44 45/* 46 * If sockaddrs on this system have an sa_len field, LWRES_PLATFORM_HAVESALEN 47 * will be defined. 48 */ 49#define LWRES_PLATFORM_HAVESALEN 1 50 51/* 52 * If this system has the IPv6 structure definitions, LWRES_PLATFORM_HAVEIPV6 53 * will be defined. 54 */ 55#define LWRES_PLATFORM_HAVEIPV6 1 56 57/* 58 * If this system is missing in6addr_any, LWRES_PLATFORM_NEEDIN6ADDRANY will 59 * be defined. 60 */ 61#undef LWRES_PLATFORM_NEEDIN6ADDRANY 62 63/* 64 * If this system is missing in6addr_loopback, 65 * LWRES_PLATFORM_NEEDIN6ADDRLOOPBACK will be defined. 66 */ 67#undef LWRES_PLATFORM_NEEDIN6ADDRLOOPBACK 68 69/* 70 * If this system has in_addr6, rather than in6_addr, 71 * LWRES_PLATFORM_HAVEINADDR6 will be defined. 72 */ 73#undef LWRES_PLATFORM_HAVEINADDR6 74 75/* 76 * Defined if unistd.h does not cause fd_set to be delared. 77 */ 78#undef LWRES_PLATFORM_NEEDSYSSELECTH 79 80/* 81 * Used to control how extern data is linked; needed for Win32 platforms. 82 */ 83#undef LWRES_PLATFORM_USEDECLSPEC 84 85/* 86 * Defined this system needs vsnprintf() and snprintf(). 87 */ 88#undef LWRES_PLATFORM_NEEDVSNPRINTF 89 90/* 91 * If this system need a modern sprintf() that returns (int) not (char*). 92 */ 93#undef LWRES_PLATFORM_NEEDSPRINTF 94 95/* 96 * The printf format string modifier to use with lwres_uint64_t values. 97 */ 98#define LWRES_PLATFORM_QUADFORMAT "ll" 99 100/*! \brief 101 * Define if this system needs strtoul. 102 */ 103#undef LWRES_PLATFORM_NEEDSTRTOUL 104 105#ifndef LWRES_PLATFORM_USEDECLSPEC 106#define LIBLWRES_EXTERNAL_DATA 107#else 108#ifdef LIBLWRES_EXPORTS 109#define LIBLWRES_EXTERNAL_DATA __declspec(dllexport) 110#else 111#define LIBLWRES_EXTERNAL_DATA __declspec(dllimport) 112#endif 113#endif 114 115/* 116 * Tell Emacs to use C mode on this file. 117 * Local Variables: 118 * mode: c 119 * End: 120 */ 121 122#endif /* LWRES_PLATFORM_H */ 123