248 lines
7.0 KiB
C
248 lines
7.0 KiB
C
![]() |
|
|||
|
|
|||
|
|
|||
|
|
|||
|
#ifndef GENERAL_SOCKET_123_INCLUDED
|
|||
|
#define GENERAL_SOCKET_123_INCLUDED
|
|||
|
|
|||
|
|
|||
|
#ifdef __cplusplus
|
|||
|
extern "C" {
|
|||
|
#endif
|
|||
|
/************************************************************************/
|
|||
|
|
|||
|
|
|||
|
#include "glbtypes.h"
|
|||
|
#include "gensock2.h"
|
|||
|
|
|||
|
|
|||
|
/*****SOCET<45><54><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD>*****/
|
|||
|
#define SOCKET_RECVBUF_LEN (12*1024)
|
|||
|
|
|||
|
/************************* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> *****************************/
|
|||
|
/***<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**/
|
|||
|
#define SOCK_STATUS_CONNECT_NOTUSE 0
|
|||
|
/***<2A>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**/
|
|||
|
#define SOCK_STATUS_CONNECT_WAIT 1
|
|||
|
/***<2A>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD>ӽ<EFBFBD><D3BD><EFBFBD>***/
|
|||
|
#define SOCK_STATUS_CONNECT_ING 2
|
|||
|
/***<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>رգ<D8B1><D5A3>ȴ<EFBFBD><C8B4><EFBFBD>ȫ<EFBFBD>ر<EFBFBD>***/
|
|||
|
#define SOCK_STATUS_CONNECT_DIS 3
|
|||
|
/***<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>***/
|
|||
|
#define SOCK_STATUS_CONNECT_ED 4
|
|||
|
|
|||
|
|
|||
|
/************************* <20>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> *****************************/
|
|||
|
/*** <20>˴<EFBFBD><CBB4>ǿգ<C7BF><D5A3>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD> **/
|
|||
|
#define SOCK_STATUS_RECV_WAIT 5
|
|||
|
/***<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>رգ<D8B1><D5A3>ȴ<EFBFBD><C8B4><EFBFBD>ȫ<EFBFBD>ر<EFBFBD>***/
|
|||
|
#define SOCK_STATUS_RECV_DIS 6
|
|||
|
/***<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>***/
|
|||
|
#define SOCK_STATUS_RECV_ED 7
|
|||
|
|
|||
|
|
|||
|
/************************* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> *****************************/
|
|||
|
/***<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**/
|
|||
|
#define SOCK_STATUS_LISN_NOTUSE 0
|
|||
|
/*** <20>˴<EFBFBD><CBB4>ǿգ<C7BF><D5A3>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD> **/
|
|||
|
#define SOCK_STATUS_LISN_WAIT 1
|
|||
|
/*** <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ***/
|
|||
|
#define SOCK_STATUS_LISN_ING 2
|
|||
|
|
|||
|
/************************* UDP<44><50><EFBFBD><EFBFBD> *****************************/
|
|||
|
/***<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**/
|
|||
|
#define SOCK_STATUS_UDP_NOTUSE 0
|
|||
|
/*** <20>˴<EFBFBD><CBB4>ǿգ<C7BF><D5A3>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD> **/
|
|||
|
#define SOCK_STATUS_UDP_WAIT 1
|
|||
|
/*** <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ***/
|
|||
|
#define SOCK_STATUS_UDP_ING 2
|
|||
|
|
|||
|
|
|||
|
/****<2A><><EFBFBD>ӳ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>****/
|
|||
|
#define SOCK_CONNECT_WAIT_TIME (10*1000)
|
|||
|
/****<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵȴ<D3B5>ʱ<EFBFBD>䣬<EFBFBD><E4A3AC>ʱ<EFBFBD><CAB1><EFBFBD>ر<EFBFBD>****/
|
|||
|
#define SOCK_CONNECT_ING_TIME (30*1000)
|
|||
|
/****<2A><><EFBFBD><EFBFBD><EFBFBD>رյȴ<D5B5><C8B4><EFBFBD><EFBFBD><EFBFBD>ʱǿ<CAB1>ƹر<C6B9>****/
|
|||
|
#define SOCK_CONNECT_DIS_TIME (10*1000)
|
|||
|
|
|||
|
|
|||
|
/**** <20><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD><DCA3>ٴ<EFBFBD><D9B4><EFBFBD><EFBFBD><EFBFBD> ****/
|
|||
|
#define SOCK_LISTEN_WAIT_TIME (15*1000)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
#ifdef WIN32
|
|||
|
#define TYTX_SOCK_ESHUTDOWN WSAESHUTDOWN
|
|||
|
#else
|
|||
|
#define TYTX_SOCK_ESHUTDOWN ESHUTDOWN
|
|||
|
#endif
|
|||
|
|
|||
|
|
|||
|
typedef enum{
|
|||
|
SOCKET_LINK_MODE_CONN=1,
|
|||
|
SOCKET_LINK_MODE_RECV
|
|||
|
} SOCKET_LINK_MODE;
|
|||
|
|
|||
|
|
|||
|
/****SOCKET<45><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խṹ<D4BD><E1B9B9>****/
|
|||
|
typedef struct
|
|||
|
{
|
|||
|
SOCKET_LINK_MODE sock_link_mode; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>listen<65>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2
|
|||
|
|
|||
|
SOCKET sockID; /***SOCKET**/
|
|||
|
struct sockaddr_in IPaddr; /**<2A><><EFBFBD>ӶԶ<D3B6><D4B6><EFBFBD><EFBFBD><EFBFBD>**/
|
|||
|
|
|||
|
ST_INT status; /**<2A><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**/
|
|||
|
ST_DOUBLE operationTime; /**<2A>ȴ<EFBFBD><C8B4><EFBFBD>ʱ<EFBFBD><CAB1>ʱ<EFBFBD><CAB1>**/
|
|||
|
|
|||
|
ST_INT lastSendLen;
|
|||
|
ST_UINT recvCount; /**<2A><><EFBFBD>յ<EFBFBD>֡<EFBFBD><D6A1><EFBFBD><EFBFBD><EFBFBD>ۼ<EFBFBD>*/
|
|||
|
/***<2A><><EFBFBD>ڻ<EFBFBD><DABB><EFBFBD><EFBFBD>Ƚϴ<C8BD><CFB4><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD><D3B9>û<EFBFBD><C3BB>壬<EFBFBD>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̴<EFBFBD><CCB4><EFBFBD>?? ***/
|
|||
|
ST_INT recvDataLen; /***<2A><><EFBFBD>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>**/
|
|||
|
ST_UCHAR recvDataBuf[SOCKET_RECVBUF_LEN]; /**<2A><><EFBFBD>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݻ<EFBFBD><DDBB><EFBFBD>**/
|
|||
|
|
|||
|
//֪ͨ<CDA8>ⲿ<EFBFBD><E2B2BF><EFBFBD>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
ST_INT flagConnecSuccess;
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>SOCKET <20>Զ˵<D4B6>IP<49>Ͷ˿<CDB6>
|
|||
|
ST_CHAR ipaddress[32];
|
|||
|
ST_INT tcpport;
|
|||
|
} SOCKET_LINK_ATTRIB;
|
|||
|
|
|||
|
//socket<65><74>3<EFBFBD>ࣺconnect<63><74>listen<65><6E>recvconnect
|
|||
|
/**** <20>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ****/ //2011-10-26ȡ<36><C8A1><EFBFBD>ṹ<EFBFBD>壬<EFBFBD><E5A3AC>CONN<4E>ϲ<EFBFBD>ΪLINK<4E><4B><EFBFBD><EFBFBD>mode<64><65><EFBFBD><EFBFBD>
|
|||
|
// typedef struct
|
|||
|
// {
|
|||
|
// SOCKET sockID; /***SOCKET**/
|
|||
|
// struct sockaddr_in IPaddr; /**<2A><><EFBFBD>ӶԶ<D3B6><D4B6><EFBFBD><EFBFBD><EFBFBD>**/
|
|||
|
//
|
|||
|
// ST_INT status; /**<2A><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**/
|
|||
|
// ST_DOUBLE operationTime; /**<2A>ȴ<EFBFBD><C8B4><EFBFBD>ʱ<EFBFBD><CAB1>ʱ<EFBFBD><CAB1>**/
|
|||
|
//
|
|||
|
// ST_UINT recvCount; /**<2A><><EFBFBD>յ<EFBFBD>֡<EFBFBD><D6A1><EFBFBD><EFBFBD><EFBFBD>ۼ<EFBFBD>*/
|
|||
|
//
|
|||
|
// /***<2A><><EFBFBD>ڻ<EFBFBD><DABB><EFBFBD><EFBFBD>Ƚϴ<C8BD><CFB4><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD><D3B9>û<EFBFBD><C3BB>壬<EFBFBD>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̴<EFBFBD><CCB4><EFBFBD>?? ***/
|
|||
|
// ST_INT recvDataLen; /***<2A><><EFBFBD>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>**/
|
|||
|
// ST_UCHAR recvDataBuf[SOCKET_RECVBUF_LEN]; /**<2A><><EFBFBD>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݻ<EFBFBD><DDBB><EFBFBD>**/
|
|||
|
//
|
|||
|
// //֪ͨ<CDA8>ⲿ<EFBFBD><E2B2BF><EFBFBD>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
// ST_INT flagConnecSuccess;
|
|||
|
//
|
|||
|
// //<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>SOCKET
|
|||
|
// ST_CHAR ipaddress[32];
|
|||
|
// ST_INT tcpport;
|
|||
|
// } SOCKET_RECV_ATTRIB;
|
|||
|
|
|||
|
|
|||
|
/**** <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> *****/
|
|||
|
typedef struct
|
|||
|
{
|
|||
|
SOCKET sockID; /***SOCKET**/
|
|||
|
struct sockaddr_in IPaddr; /**<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**/
|
|||
|
|
|||
|
ST_INT status; /**<2A><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**/
|
|||
|
ST_DOUBLE operationTime; /** <20><>ʱʱ<CAB1>䵽<EFBFBD><E4B5BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**/
|
|||
|
|
|||
|
|
|||
|
/*** <20>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD><D3A3>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ***/
|
|||
|
ST_INT maxConnNum; /*** <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>룬ָ<EBA3AC><D6B8><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> **/
|
|||
|
SOCKET_LINK_ATTRIB *recvConnAttrib; /** <20>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> **/
|
|||
|
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>SOCKET
|
|||
|
ST_CHAR ipaddress[32];
|
|||
|
ST_INT tcpport;
|
|||
|
} SOCKET_LISN_ATTRIB;
|
|||
|
|
|||
|
|
|||
|
/*** UDP<44><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ***/
|
|||
|
typedef struct
|
|||
|
{
|
|||
|
SOCKET sockID; /***SOCKET**/
|
|||
|
struct sockaddr_in localAddr; /**<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Կ<EFBFBD><D4BF><EFBFBD>ȱʧ)**/
|
|||
|
|
|||
|
ST_INT status; /**<2A><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0δ<30><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD>û<EFBFBD><C3BB>Ѵ<EFBFBD><D1B4><EFBFBD>**/
|
|||
|
ST_DOUBLE operationTime; /** <20><>ʱʱ<CAB1>䵽<EFBFBD><E4B5BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**/
|
|||
|
|
|||
|
struct sockaddr_in remoteAddr; /** <20>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>Է<EFBFBD><D4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**/
|
|||
|
ST_CHAR remoteIP[32]; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľṹ<C4BD><E1B9B9><EFBFBD>еõ<D0B5>
|
|||
|
ST_INT remotePort;
|
|||
|
|
|||
|
ST_UINT recvCount; /**<2A><><EFBFBD>յ<EFBFBD>֡<EFBFBD><D6A1><EFBFBD><EFBFBD><EFBFBD>ۼ<EFBFBD>*/
|
|||
|
|
|||
|
ST_INT recvDataLen; /***<2A><><EFBFBD>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>**/
|
|||
|
ST_UCHAR recvDataBuf[SOCKET_RECVBUF_LEN]; /**<2A><><EFBFBD>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݻ<EFBFBD><DDBB><EFBFBD>**/
|
|||
|
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>SOCKET
|
|||
|
ST_CHAR ipaddress[32]; //<2F><><EFBFBD>ȿ<EFBFBD><C8BF><EFBFBD><EFBFBD><EFBFBD>0
|
|||
|
ST_INT udpport;
|
|||
|
ST_INT ifRemote; //<2F>Ƿ<EFBFBD>ʹ<EFBFBD><CAB9>·<EFBFBD>ɣ<EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD>ڱ<EFBFBD><DAB1>ع㲥<D8B9><E3B2A5><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD>ʹ<EFBFBD><CAB9>
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>--<2D>ӽӿ<D3BD><D3BF><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD>ȡ
|
|||
|
//cbt add 2021.1.8 ʹ<><CAB9>eth2<68><32><EFBFBD><EFBFBD>/<2F><><EFBFBD>չ<EFBFBD><D5B9>ϲ<EFBFBD><CFB2><EFBFBD><EFBFBD><EFBFBD>UDP<44><50><EFBFBD><EFBFBD>--eth2<68><32>Ҫ<EFBFBD>߱<EFBFBD>mac<61><63>ip<69><70><EFBFBD><EFBFBD><EFBFBD>롢<EFBFBD><EBA1A2><EFBFBD><EFBFBD>
|
|||
|
ST_CHAR ipmask[32]; //<2F><><EFBFBD>ȿ<EFBFBD><C8BF><EFBFBD><EFBFBD><EFBFBD>0
|
|||
|
ST_CHAR macaddress[32];
|
|||
|
ST_CHAR gateway[32];
|
|||
|
|
|||
|
} SOCKET_UDP_ATTRIB;
|
|||
|
|
|||
|
|
|||
|
/***<2A><><EFBFBD><EFBFBD>: <20><><EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3>ж<EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD>*****/
|
|||
|
ST_RET socket_link_send( SOCKET_LINK_ATTRIB * sock_attrib, ST_UCHAR *sendBuf, ST_INT dataLen );
|
|||
|
/*<2A><><EFBFBD><EFBFBD>: <20><><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD><D8B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*****/
|
|||
|
ST_RET socket_link_close_active( SOCKET_LINK_ATTRIB * sock_attrib );
|
|||
|
/*<2A><><EFBFBD><EFBFBD>: <20><><EFBFBD><EFBFBD>SOCKET<45>Ƿ<EFBFBD><C7B7>յ<EFBFBD><D5B5><EFBFBD><EFBFBD>ݡ<EFBFBD><DDA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>쳣<EFBFBD><ECB3A3><EFBFBD>յ<EFBFBD><D5B5>ر<EFBFBD><D8B1><EFBFBD><EFBFBD>ӵ<EFBFBD>*****/
|
|||
|
ST_INT socket_link_check_status( SOCKET_LINK_ATTRIB * sock_attrib_array, ST_INT arrayNum );
|
|||
|
|
|||
|
|
|||
|
/****<2A><><EFBFBD>ã<EFBFBD><C3A3><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD>ṹ<EFBFBD><E1B9B9>**/
|
|||
|
ST_RET init_sock_conn_attrib( SOCKET_LINK_ATTRIB * sock_attrib );
|
|||
|
|
|||
|
ST_RET release_sock_conn_attrib( SOCKET_LINK_ATTRIB * sock_attrib );
|
|||
|
|
|||
|
|
|||
|
/****<2A><><EFBFBD>ã<EFBFBD><C3A3><EFBFBD>ʼ<EFBFBD><CABC> <20>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ṹ<EFBFBD><E1B9B9>**/
|
|||
|
ST_RET init_sock_recv_attrib( SOCKET_LINK_ATTRIB * sock_attrib );
|
|||
|
|
|||
|
ST_RET release_sock_recv_attrib( SOCKET_LINK_ATTRIB * sock_attrib );
|
|||
|
|
|||
|
|
|||
|
/****<2A><><EFBFBD>ã<EFBFBD><C3A3><EFBFBD>ʼ<EFBFBD><CABC> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ṹ<EFBFBD><E1B9B9>**/
|
|||
|
ST_RET init_sock_lisn_attrib( SOCKET_LISN_ATTRIB * sock_attrib );
|
|||
|
|
|||
|
ST_RET release_sock_lisn_attrib( SOCKET_LISN_ATTRIB * sock_attrib );
|
|||
|
|
|||
|
/***<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>***/
|
|||
|
ST_RET set_sock_lisn_attrib( SOCKET_LISN_ATTRIB * sock_attrib, ST_CHAR *ip_address, ST_INT port,
|
|||
|
ST_DOUBLE listen_after_ms, ST_INT maxConnNum, SOCKET_LINK_ATTRIB * link_attrib );
|
|||
|
ST_RET set_sock_conn_attrib( SOCKET_LINK_ATTRIB * sock_attrib, ST_CHAR *ip_address, ST_INT port,
|
|||
|
ST_DOUBLE connect_after_ms );
|
|||
|
|
|||
|
/*<2A><><EFBFBD><EFBFBD>: <20><><EFBFBD><EFBFBD>SOCKET<45>Ƿ<EFBFBD><C7B7>յ<EFBFBD><D5B5><EFBFBD><EFBFBD>ݡ<EFBFBD><DDA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>쳣<EFBFBD><ECB3A3><EFBFBD>յ<EFBFBD><D5B5>ر<EFBFBD><D8B1><EFBFBD><EFBFBD>ӵ<EFBFBD>*****/
|
|||
|
ST_INT socket_listen_check_status( SOCKET_LISN_ATTRIB * sock_attrib );
|
|||
|
|
|||
|
|
|||
|
/******<2A><><EFBFBD>ã<EFBFBD><C3A3><EFBFBD>ʼ<EFBFBD><CABC> UDP<44><50><EFBFBD><EFBFBD> <20>ṹ<EFBFBD><E1B9B9> ********/
|
|||
|
ST_RET init_sock_udp_attrib( SOCKET_UDP_ATTRIB * sock_attrib );
|
|||
|
ST_RET release_sock_udp_attrib( SOCKET_UDP_ATTRIB * sock_attrib );
|
|||
|
|
|||
|
/***<2A><><EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD><EFBFBD>UDP<44><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԣ<EFBFBD>IP<49><50><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>****/
|
|||
|
ST_RET set_sock_udp_attrib( SOCKET_UDP_ATTRIB * sock_attrib, ST_CHAR *ip_address, ST_INT port,
|
|||
|
ST_DOUBLE listen_after_ms, ST_INT ifRemote );
|
|||
|
|
|||
|
/*****<2A><><EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD><EFBFBD>UDP<44><50><EFBFBD><EFBFBD>֡(<28><><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD>IPΪ<50>գ<EFBFBD><D5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD>ӷ<EFBFBD><D3B7><EFBFBD>)*****/
|
|||
|
ST_RET socket_udp_send( SOCKET_UDP_ATTRIB * sock_attrib, ST_UCHAR *sendBuf, ST_INT dataLen, ST_CHAR *remoteIP, ST_INT remotePort );
|
|||
|
/***<2A><><EFBFBD><EFBFBD>: <20><><EFBFBD><EFBFBD>UDP<44>Ƿ<EFBFBD><C7B7>յ<EFBFBD><D5B5><EFBFBD><EFBFBD>ݡ<EFBFBD><DDA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>쳣<EFBFBD><ECB3A3>*****/
|
|||
|
ST_INT socket_udp_check_status( SOCKET_UDP_ATTRIB * sock_attrib_arrary, ST_INT arrayNum );
|
|||
|
|
|||
|
ST_INT socket_udp_check_status_eth2( SOCKET_UDP_ATTRIB * sock_attrib );
|
|||
|
|
|||
|
/************************************************************************/
|
|||
|
#ifdef __cplusplus
|
|||
|
}
|
|||
|
#endif
|
|||
|
|
|||
|
|
|||
|
#endif
|