xref: /minix3/external/bsd/libpcap/dist/pcap-stdinc.h (revision d56f51ea7d8b9045e5c8e2028422523d3f9a5840)
1*d56f51eaSDavid van Moolenbroek /*	$NetBSD: pcap-stdinc.h,v 1.2 2014/11/19 19:33:30 christos Exp $	*/
2*d56f51eaSDavid van Moolenbroek 
3*d56f51eaSDavid van Moolenbroek /*
4*d56f51eaSDavid van Moolenbroek  * Copyright (c) 2002 - 2005 NetGroup, Politecnico di Torino (Italy)
5*d56f51eaSDavid van Moolenbroek  * Copyright (c) 2005 - 2009 CACE Technologies, Inc. Davis (California)
6*d56f51eaSDavid van Moolenbroek  * All rights reserved.
7*d56f51eaSDavid van Moolenbroek  *
8*d56f51eaSDavid van Moolenbroek  * Redistribution and use in source and binary forms, with or without
9*d56f51eaSDavid van Moolenbroek  * modification, are permitted provided that the following conditions
10*d56f51eaSDavid van Moolenbroek  * are met:
11*d56f51eaSDavid van Moolenbroek  *
12*d56f51eaSDavid van Moolenbroek  * 1. Redistributions of source code must retain the above copyright
13*d56f51eaSDavid van Moolenbroek  * notice, this list of conditions and the following disclaimer.
14*d56f51eaSDavid van Moolenbroek  * 2. Redistributions in binary form must reproduce the above copyright
15*d56f51eaSDavid van Moolenbroek  * notice, this list of conditions and the following disclaimer in the
16*d56f51eaSDavid van Moolenbroek  * documentation and/or other materials provided with the distribution.
17*d56f51eaSDavid van Moolenbroek  * 3. Neither the name of the Politecnico di Torino nor the names of its
18*d56f51eaSDavid van Moolenbroek  * contributors may be used to endorse or promote products derived from
19*d56f51eaSDavid van Moolenbroek  * this software without specific prior written permission.
20*d56f51eaSDavid van Moolenbroek  *
21*d56f51eaSDavid van Moolenbroek  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22*d56f51eaSDavid van Moolenbroek  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23*d56f51eaSDavid van Moolenbroek  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24*d56f51eaSDavid van Moolenbroek  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25*d56f51eaSDavid van Moolenbroek  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26*d56f51eaSDavid van Moolenbroek  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27*d56f51eaSDavid van Moolenbroek  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28*d56f51eaSDavid van Moolenbroek  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29*d56f51eaSDavid van Moolenbroek  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30*d56f51eaSDavid van Moolenbroek  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31*d56f51eaSDavid van Moolenbroek  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32*d56f51eaSDavid van Moolenbroek  */
33*d56f51eaSDavid van Moolenbroek #ifndef pcap_stdinc_h
34*d56f51eaSDavid van Moolenbroek #define pcap_stdinc_h
35*d56f51eaSDavid van Moolenbroek 
36*d56f51eaSDavid van Moolenbroek /*
37*d56f51eaSDavid van Moolenbroek  * Avoids a compiler warning in case this was already defined
38*d56f51eaSDavid van Moolenbroek  * (someone defined _WINSOCKAPI_ when including 'windows.h', in order
39*d56f51eaSDavid van Moolenbroek  * to prevent it from including 'winsock.h')
40*d56f51eaSDavid van Moolenbroek  */
41*d56f51eaSDavid van Moolenbroek #ifdef _WINSOCKAPI_
42*d56f51eaSDavid van Moolenbroek #undef _WINSOCKAPI_
43*d56f51eaSDavid van Moolenbroek #endif
44*d56f51eaSDavid van Moolenbroek 
45*d56f51eaSDavid van Moolenbroek #include <winsock2.h>
46*d56f51eaSDavid van Moolenbroek #include <fcntl.h>
47*d56f51eaSDavid van Moolenbroek #include <time.h>
48*d56f51eaSDavid van Moolenbroek #include <io.h>
49*d56f51eaSDavid van Moolenbroek 
50*d56f51eaSDavid van Moolenbroek #include "bittypes.h"
51*d56f51eaSDavid van Moolenbroek #include "IP6_misc.h"
52*d56f51eaSDavid van Moolenbroek 
53*d56f51eaSDavid van Moolenbroek #define caddr_t char*
54*d56f51eaSDavid van Moolenbroek 
55*d56f51eaSDavid van Moolenbroek #if defined(_MSC_VER)
56*d56f51eaSDavid van Moolenbroek   #define snprintf  _snprintf
57*d56f51eaSDavid van Moolenbroek   #define vsnprintf _vsnprintf
58*d56f51eaSDavid van Moolenbroek   #define strdup    _strdup
59*d56f51eaSDavid van Moolenbroek #endif
60*d56f51eaSDavid van Moolenbroek 
61*d56f51eaSDavid van Moolenbroek #define inline __inline
62*d56f51eaSDavid van Moolenbroek 
63*d56f51eaSDavid van Moolenbroek #ifdef __MINGW32__
64*d56f51eaSDavid van Moolenbroek   #include <stdint.h>
65*d56f51eaSDavid van Moolenbroek #else
66*d56f51eaSDavid van Moolenbroek   #ifndef _UINTPTR_T_DEFINED
67*d56f51eaSDavid van Moolenbroek     #ifdef  _WIN64
68*d56f51eaSDavid van Moolenbroek       typedef unsigned __int64    uintptr_t;
69*d56f51eaSDavid van Moolenbroek     #else
70*d56f51eaSDavid van Moolenbroek       typedef _W64 unsigned int   uintptr_t;
71*d56f51eaSDavid van Moolenbroek     #endif
72*d56f51eaSDavid van Moolenbroek     #define _UINTPTR_T_DEFINED
73*d56f51eaSDavid van Moolenbroek   #endif
74*d56f51eaSDavid van Moolenbroek 
75*d56f51eaSDavid van Moolenbroek   #ifndef _INTPTR_T_DEFINED
76*d56f51eaSDavid van Moolenbroek     #ifdef  _WIN64
77*d56f51eaSDavid van Moolenbroek       typedef __int64    intptr_t;
78*d56f51eaSDavid van Moolenbroek     #else
79*d56f51eaSDavid van Moolenbroek       typedef _W64 int   intptr_t;
80*d56f51eaSDavid van Moolenbroek     #endif
81*d56f51eaSDavid van Moolenbroek     #define _INTPTR_T_DEFINED
82*d56f51eaSDavid van Moolenbroek   #endif
83*d56f51eaSDavid van Moolenbroek #endif /*__MINGW32__*/
84*d56f51eaSDavid van Moolenbroek 
85*d56f51eaSDavid van Moolenbroek #endif /* pcap_stdinc_h */
86