功能分区:原始套接字
兼容系统:Linux MacOS Windows Android IOS
所属项目:XEngine
所属组件:XEngine_Core
所属模块:XEngine_Protocol
所属结构:无
/************************************************************************/
/* 原始套接字编程数据结构参数 */
/************************************************************************/
typedef
struct
tag_Protocol_RawSocket_NetParam
{
CHAR
tszSrcMac[8]; //原始MAC地址(ARP协议需要)
CHAR
tszDstMac[8]; //目的MAC地址
CHAR
tszSrcAddr[64]; //原始地址
CHAR
tszDstAddr[64]; //目标地址
int nSPort;
//原端口
int nDPort;
//目标端口
int nIDProfile;
//IP头标志,可为空
int nIPProto;
//响应的协议类型
USHORT usTTL;
//TTL节点
USHORT usLen;
//负载数据包大小,如果没有填入0,解析返回代表协议大小,只需要移动后就是数据了
//负载协议
struct
{
int nWinSize;
//滑动窗口大小
int nSequeue;
//当前序列号
int nAck;
//确认号
uint8_t
nFlag; //协议子类型
}st_TCPHdr;
struct
{
int nSequeue;
//包序列号
uint8_t
nFlag; //协议子类型
}st_ICMPHdr;
struct
{
uint16_t
nFlag; //协议子类型
}st_ARPHdr;
}PROTOCOL_RAWSOCKET_NETPARAM, *
LPPROTOCOL_RAWSOCKET_NETPARAM;