📄 sendippack.h
字号:
// SendIpPack.h: interface for the SendIpPack class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_SENDIPPACK_H__23B851EE_46DA_43B6_B934_BD6D42977634__INCLUDED_)
#define AFX_SENDIPPACK_H__23B851EE_46DA_43B6_B934_BD6D42977634__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <Winsock2.h>
#include <Ws2tcpip.h>//
//__________________________________________________________________
#pragma pack(1)
//#include "stdafx.h"
//#define SRCRAND rand()%255
#define WIN32_LEAN_AND_MEAN
#define OICQ_MAX_PACKET 1024
#define OICQ_MAX_MSG 512
#define OICQ_MSG_LEN 45
//#define SRC_IP "192.168.0.13" /*//"127.0.0.1"192.168.SRCRAND.SRCRAND*/
//#define SRC_PORT 45
#define DST_PORT 4357
#define ICMP 0x01
#define IGMP 0x02
#define TCP 0x06
#define UDP 0x11
typedef struct lp_interface
{
char in_protocol;
char in_destaddr[16];
UINT in_destport;
}LP_INTER;
//_________________________________________________________________
class CSendIpPack
{
public:
CSendIpPack();
virtual ~CSendIpPack();
LP_INTER m_p;
UINT SendIP(DWORD m_sleep,int m_speed);
UINT SendIP(int m_speed);
UINT SendIP();
protected:
LPSTR GetLocalIpAddr();
USHORT CheckSum(USHORT *buffer, int size);
//////////////////////////////////////
protected:
typedef struct ip_hdr
{
unsigned char ip_verlen;
unsigned char ip_tos;
unsigned short ip_totallength;
unsigned short ip_id;
unsigned short ip_offset;
unsigned char ip_ttl;
unsigned char ip_protocol;
unsigned short ip_checksum;
unsigned int ip_srcaddr;
unsigned int ip_destaddr;
}IP_HDR;
typedef struct udp_hdr
{
unsigned short src_portno;
unsigned short dst_portno;
unsigned short udp_length;
unsigned short udp_checksum;
}UDP_HDR;
};
#endif // !defined(AFX_SENDIPPACK_H__23B851EE_46DA_43B6_B934_BD6D42977634__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -