1 /** 2 * This file has no copyright assigned and is placed in the Public Domain. 3 * This file is part of the mingw-w64 runtime package. 4 * No warranty is given; refer to the file DISCLAIMER.PD within this package. 5 */ 6 #ifndef _ICMP_INCLUDED_ 7 #define _ICMP_INCLUDED_ 8 9 #ifdef __cplusplus 10 extern "C" { 11 #endif 12 13 HANDLE WINAPI IcmpCreateFile(VOID); 14 HANDLE WINAPI Icmp6CreateFile(VOID); 15 WINBOOL WINAPI IcmpCloseHandle(HANDLE IcmpHandle); 16 DWORD WINAPI IcmpSendEcho(HANDLE IcmpHandle,IPAddr DestinationAddress,LPVOID RequestData,WORD RequestSize,PIP_OPTION_INFORMATION RequestOptions,LPVOID ReplyBuffer,DWORD ReplySize,DWORD Timeout); 17 18 #ifdef PIO_APC_ROUTINE_DEFINED 19 DWORD WINAPI IcmpSendEcho2(HANDLE IcmpHandle,HANDLE Event,PIO_APC_ROUTINE ApcRoutine,PVOID ApcContext,IPAddr DestinationAddress,LPVOID RequestData,WORD RequestSize,PIP_OPTION_INFORMATION RequestOptions,LPVOID ReplyBuffer,DWORD ReplySize,DWORD Timeout); 20 DWORD WINAPI Icmp6SendEcho2(HANDLE IcmpHandle,HANDLE Event,PIO_APC_ROUTINE ApcRoutine,PVOID ApcContext,struct sockaddr_in6 *SourceAddress,struct sockaddr_in6 *DestinationAddress,LPVOID RequestData,WORD RequestSize,PIP_OPTION_INFORMATION RequestOptions,LPVOID ReplyBuffer,DWORD ReplySize,DWORD Timeout); 21 #else 22 DWORD WINAPI IcmpSendEcho2(HANDLE IcmpHandle,HANDLE Event,FARPROC ApcRoutine,PVOID ApcContext,IPAddr DestinationAddress,LPVOID RequestData,WORD RequestSize,PIP_OPTION_INFORMATION RequestOptions,LPVOID ReplyBuffer,DWORD ReplySize,DWORD Timeout); 23 DWORD WINAPI Icmp6SendEcho2(HANDLE IcmpHandle,HANDLE Event,FARPROC ApcRoutine,PVOID ApcContext,struct sockaddr_in6 *SourceAddress,struct sockaddr_in6 *DestinationAddress,LPVOID RequestData,WORD RequestSize,PIP_OPTION_INFORMATION RequestOptions,LPVOID ReplyBuffer,DWORD ReplySize,DWORD Timeout); 24 #endif 25 26 DWORD WINAPI IcmpParseReplies(LPVOID ReplyBuffer,DWORD ReplySize); 27 DWORD WINAPI Icmp6ParseReplies(LPVOID ReplyBuffer,DWORD ReplySize); 28 29 #ifdef __cplusplus 30 } 31 #endif 32 #endif 33