|
|
|
|
/************************************************************************************
|
|
|
|
|
*
|
|
|
|
|
* Copyright (C) 2002-2003 SCADA Control Technology Co., Ltd. All rights reserved.
|
|
|
|
|
*
|
|
|
|
|
* $Source: /opt/CVS_ROOT_PGC_EX2000/commserver/windows/widgets/udpping.h,v $
|
|
|
|
|
*
|
|
|
|
|
* $Author: jehu $
|
|
|
|
|
*
|
|
|
|
|
* $Date: 2006/07/05 07:31:44 $
|
|
|
|
|
*
|
|
|
|
|
* $Revision: 1.1.1.1 $
|
|
|
|
|
*
|
|
|
|
|
* $State: Exp $
|
|
|
|
|
*
|
|
|
|
|
* $Name: $
|
|
|
|
|
*
|
|
|
|
|
* $Locker: $
|
|
|
|
|
*
|
|
|
|
|
* $Log: udpping.h,v $
|
|
|
|
|
* Revision 1.1.1.1 2006/07/05 07:31:44 jehu
|
|
|
|
|
* no message
|
|
|
|
|
*
|
|
|
|
|
* Revision 1.4 2006/04/28 06:29:18 administrator
|
|
|
|
|
* <EFBFBD><EFBFBD>ping<EFBFBD><EFBFBD><EFBFBD>ݰ<EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD>Ե㷢<EFBFBD><EFBFBD>
|
|
|
|
|
*
|
|
|
|
|
* Revision 1.3 2006/04/22 07:51:07 administrator
|
|
|
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*
|
|
|
|
|
* Revision 1.2 2005/10/20 07:03:56 Administrator
|
|
|
|
|
* ǰ<EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*
|
|
|
|
|
* Revision 1.1 2005/10/12 06:03:47 Administrator
|
|
|
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>CVS<EFBFBD>ؼ<EFBFBD><EFBFBD><EFBFBD>,ÿ<EFBFBD><EFBFBD><EFBFBD>ύ<EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD>
|
|
|
|
|
*
|
|
|
|
|
**************************************************************************************/
|
|
|
|
|
//***************************************************************
|
|
|
|
|
//* udpcomm.h *
|
|
|
|
|
//* Liangchu Lee 2000.07.10 *
|
|
|
|
|
//***************************************************************
|
|
|
|
|
|
|
|
|
|
#ifndef __UDPPING_H_ICL__
|
|
|
|
|
#define __UDPPING_H_ICL__
|
|
|
|
|
|
|
|
|
|
#include "common.h"
|
|
|
|
|
|
|
|
|
|
#define MAX_DELAYTIME 20
|
|
|
|
|
#define MAX_RANDOM 32
|
|
|
|
|
#define MAX_NODENAME 64
|
|
|
|
|
#define PINGRANDOM ("!L$Q_TO5U^8&J @T#H*F(J)+D%RG|<>T~?:{}AESRGA")
|
|
|
|
|
|
|
|
|
|
typedef struct tagUDP_PING_INFO
|
|
|
|
|
{
|
|
|
|
|
SOCKET rSocket __attribute__ ((packed));
|
|
|
|
|
SOCKET sSocket[MAX_ADDR] __attribute__ ((packed));
|
|
|
|
|
|
|
|
|
|
struct sockaddr_in SerAddr __attribute__ ((packed));
|
|
|
|
|
struct sockaddr_in CliAddr __attribute__ ((packed));
|
|
|
|
|
} UDP_PING_INFO;
|
|
|
|
|
|
|
|
|
|
typedef struct tagUDP_PING_REV_DATA
|
|
|
|
|
{
|
|
|
|
|
int MsgLen __attribute__ ((packed));
|
|
|
|
|
char MsgData[MAX_NET_BUF] __attribute__ ((packed));
|
|
|
|
|
} UDP_PING_REV_DATA;
|
|
|
|
|
|
|
|
|
|
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
|
|
|
|
// <20><>pc<70><63>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>Ƕ<EFBFBD><C7B6>ʽϵͳ
|
|
|
|
|
#ifdef PC_MACHINE
|
|
|
|
|
#ifdef OS_WINDOWS
|
|
|
|
|
#pragma pack (push,1)
|
|
|
|
|
#else// OS_UNIX
|
|
|
|
|
#pragma pack(1)
|
|
|
|
|
#endif //OS_UNIX
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
typedef struct tagPINGINFORMATION
|
|
|
|
|
{
|
|
|
|
|
BYTE barrRandom[MAX_RANDOM] __attribute__ ((packed));
|
|
|
|
|
char szNodeName[MAX_NODENAME] __attribute__ ((packed));
|
|
|
|
|
BYTE bNodeType __attribute__ ((packed)); /*<2A>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD>*/
|
|
|
|
|
WORD wNodeID __attribute__ ((packed)); /*<2A>ӵ<EFBFBD><D3B5><EFBFBD>*/
|
|
|
|
|
u_long inetMask __attribute__ ((packed)); /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>˳<EFBFBD><CBB3>*/
|
|
|
|
|
u_long inetAddr __attribute__ ((packed)); /*<2A><><EFBFBD><EFBFBD>IP<49><50>ַ, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>˳<EFBFBD><CBB3>*/
|
|
|
|
|
DWORD dwStatus __attribute__ ((packed)); /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӿ<EFBFBD>IP<49><50>ַ<EFBFBD><D6B7>״̬*/
|
|
|
|
|
} PINGINFORMATION;
|
|
|
|
|
|
|
|
|
|
// <20><>pc<70><63>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>Ƕ<EFBFBD><C7B6>ʽϵͳ
|
|
|
|
|
#ifdef PC_MACHINE
|
|
|
|
|
#ifdef OS_WINDOWS
|
|
|
|
|
#pragma pack (pop)
|
|
|
|
|
#else// OS_UNIX
|
|
|
|
|
#pragma pack (0)
|
|
|
|
|
#endif //OS_UNIX
|
|
|
|
|
#endif
|
|
|
|
|
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
|
|
|
|
|
|
|
|
|
void UdpPingTimer(void);
|
|
|
|
|
BOOL UdpPingInit(void);
|
|
|
|
|
void UdpPingSendData(void);
|
|
|
|
|
void UdpPingSendDataP2P(void);
|
|
|
|
|
void UdpPingReaddata(void);
|
|
|
|
|
void UdpPingClose(void);
|
|
|
|
|
|
|
|
|
|
//
|
|
|
|
|
void UdpPingSwitch(void);
|
|
|
|
|
#endif
|