00001 /* 00002 * $Id: libnet_8h-source.html,v 1.1.1.1 2012/02/21 22:14:23 misho Exp $ 00003 * 00004 * libnet.h - Network routine library header file for Win32 VC++ 00005 * 00006 * Copyright (c) 1998 - 2004 Mike D. Schiffman <mike@infonexus.com> 00007 * All rights reserved. 00008 * 00009 * Redistribution and use in source and binary forms, with or without 00010 * modification, are permitted provided that the following conditions 00011 * are met: 00012 * 1. Redistributions of source code must retain the above copyright 00013 * notice, this list of conditions and the following disclaimer. 00014 * 2. Redistributions in binary form must reproduce the above copyright 00015 * notice, this list of conditions and the following disclaimer in the 00016 * documentation and/or other materials provided with the distribution. 00017 * 00018 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 00019 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 00020 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 00021 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 00022 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 00023 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 00024 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 00025 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 00026 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 00027 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 00028 * SUCH DAMAGE. 00029 * 00030 */ 00031 00032 #ifdef _WIN32 00033 00034 #ifndef __LIBNET_H 00035 #define __LIBNET_H 00036 00037 #include <winsock2.h> 00038 #include <windows.h> 00039 #include <time.h> 00040 #include "in_systm.h" 00041 #include "pcap.h" 00042 00043 00044 #ifdef __cplusplus 00045 extern "C" { 00046 #endif 00047 00048 /* __WIN32__ is NOT a predefined MACRO, use _WIN32 00049 * __CYGWIN__ is defined within the cygwin environment. 00050 */ 00051 #ifndef __WIN32__ 00052 #define __WIN32__ _WIN32 00053 #endif 00054 00055 #define LIBNET_LIL_ENDIAN 1 00056 #define HAVE_CONFIG_H 1 00057 00058 /* Some UNIX to Win32 conversions */ 00059 #define STDOUT_FILENO stdout 00060 #define snprintf _snprintf 00061 #define write _write 00062 #define open _open 00063 #define random rand 00064 #define close closesocket 00065 #define __func__ __FUNCTION__ 00066 00067 /* __FUNCTION__ available in VC ++ 7.0 (.NET) and greater */ 00068 #if _MSC_VER < 1300 00069 #define __FUNCTION__ __FILE__ 00070 #endif 00071 00072 #pragma comment (lib,"ws2_32") /* Winsock 2 */ 00073 #pragma comment (lib,"iphlpapi") /* IP Helper */ 00074 #pragma comment (lib,"wpcap") /* Winpcap */ 00075 #pragma comment (lib,"packet") 00076 00077 /* "@LIBNET_VERSION@" will not work in VC++, so version.h doesn't get populated */ 00078 #define VERSION "1.1.1" 00079 00080 /* To use Win32 native versions */ 00081 #define WPCAP 1 00082 #define _GNU_SOURCE 00083 #include <stdio.h> 00084 #include <string.h> 00085 #include <fcntl.h> 00086 #include <signal.h> 00087 #include <stdlib.h> 00088 #include <sys/stat.h> 00089 #include <sys/types.h> 00090 #include <ctype.h> 00091 #include <errno.h> 00092 #include <stdarg.h> 00093 #include "../libnet/libnet-macros.h" 00094 #include "../libnet/libnet-headers.h" 00095 #include "../libnet/libnet-structures.h" 00096 #include "../libnet/libnet-asn1.h" 00097 #include "../libnet/libnet-functions.h" 00098 00099 #ifdef __cplusplus 00100 } 00101 #endif 00102 00103 #endif /* __LIBNET_H */ 00104 00105 #endif 00106 /* EOF */