53 lines
1.9 KiB
C
53 lines
1.9 KiB
C
#ifndef __TCP_h__
|
|
#define __TCP_h__
|
|
/**************************************************************************
|
|
|
|
File: icw.h
|
|
|
|
Description:
|
|
|
|
**************************************************************************/
|
|
// === Structures Required by the ICMP.DLL ====================================
|
|
|
|
typedef struct {
|
|
unsigned char Ttl; // Time To Live
|
|
unsigned char Tos; // Type Of Service
|
|
unsigned char Flags; // IP header flags
|
|
unsigned char OptionsSize; // Size in bytes of options data
|
|
unsigned char *OptionsData; // Pointer to options data
|
|
} IP_OPTION_INFORMATION, * PIP_OPTION_INFORMATION;
|
|
|
|
|
|
typedef struct {
|
|
DWORD Address; // Replying address
|
|
unsigned long Status; // Reply status
|
|
unsigned long RoundTripTime; // RTT in milliseconds
|
|
unsigned short DataSize; // Echo data size
|
|
unsigned short Reserved; // Reserved for system use
|
|
void *Data; // Pointer to the echo data
|
|
IP_OPTION_INFORMATION Options; // Reply options
|
|
} IP_ECHO_REPLY, * PIP_ECHO_REPLY;
|
|
|
|
|
|
typedef HANDLE (WINAPI *ICMPCREATEFILE)(VOID);
|
|
typedef BOOL (WINAPI *ICMPCLOSEHANDLE)(HANDLE);
|
|
typedef DWORD (WINAPI *ICMPSENDECHO )(
|
|
HANDLE, DWORD, LPVOID, WORD,
|
|
PIP_OPTION_INFORMATION, LPVOID,
|
|
DWORD, DWORD
|
|
);
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"
|
|
{
|
|
#endif
|
|
DWORD PingHost();
|
|
BOOL Ping(LPSTR szIPAddress);
|
|
BOOL CheckHostName(LPSTR szIISServer);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif // __TCP_H__
|