亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? socket.h.bak

?? 自己編寫的SOCKET程序 源碼有詳盡的注釋 可以用來學習C/S程序的編寫方法
?? BAK
字號:
/*
 *	Copyleft Abelworkshop.	
 *	文件名稱:socket.h
 *	摘    要:sokcet應用輔助功能,完成一些處理工作
 *	單    位:信息學院
 *	作    者:羅濤,2120060434
 *	完成日期:2006年11月20日
 */

#include "stdafx.h"
//#include <WINSOCK2.H>
//#include <WS2TCPIP.H>
//#include <stdlib.h>
//#include <stdio.h>
//#include <fstream>
//#include <windows.h>

using namespace std;

//#pragma comment(lib,"Ws2_32.lib")

#define ARP		0x0806

#define IP		0x00
#define ICMP	0x01
#define IGMP	0x02
#define IPinIP	0X04
#define TCP		0x06
#define EGP		0x08
#define UDP		0x11
#define IPv6	0x29
#define RSVP	0x2E
#define OSPF	0x59

#define BUFFER_SIZE 20
#define BUFFERSIZE	24
#define	SIO_RCVALL _WSAIOW(IOC_VENDOR,1)

#pragma comment(lib, "wsock32.lib")

typedef unsigned char uchar;
typedef unsigned short usint;
typedef unsigned long ulint;

#pragma pack(1)					//進入字節對齊方式,方便后邊的類型強制轉換20061030

typedef struct FrameHeader_t {	//幀首部
    BYTE	DesMAC[6];			// 目的地址
    BYTE 	SrcMAC[6];			// 源地址
    WORD	FrameType;			// 幀類型
} FrameHeader_t;

typedef struct IPHeader_t {		//IP首部
	BYTE	Ver_HLen;
	BYTE	TOS;
	WORD	TotalLen;
	WORD	ID;
	WORD	Flag_Segment;
	BYTE	TTL;
	BYTE	Protocol;
	WORD	Checksum;
	ULONG	SrcIP;
	ULONG	DstIP;
} IPHeader_t;

typedef struct Data_t {			//包含幀首部和IP首部的數據包
	FrameHeader_t	FrameHeader;
	IPHeader_t		IPHeader;
} Data_t;

#pragma pack()					//恢復缺省對齊方式
//以上定義因為是眾所周知,所以在理解的基礎上自互聯網獲取20061030
/*根據以上定義提取源IP地址和目的IP地址的方法比較簡潔(如下),便比較浪費CPU操作時間
Data_t		* IPPacket;
ULONG		SourceIP,DestinationIP;
……
IPPacket = (Data_t *) pkt_data;
……
SourceIP = ntohl(IPPacket->IPHeader.SrcIP);
DestinationIP = ntohl(IPPacket->IPHeader.DstIP);
……*/

struct cap_pack										//存放監控結果鏈表結點結構
{
	ulint	SrcIP;									//源IP
	ulint	DstIP;									//目的IP
	BYTE	Protocol;								//協議類型
	ulint	Count;									//統計數量
	cap_pack* next;									//鏈表,指向下一個節點
};

#define IPTOSBUFFERS 12
char* ipTostr(ulint ulIP){								// 將一個無符號長整型的機器IP地址轉換為字符串類型的用戶友好IP格式
	static char output[IPTOSBUFFERS][3 * 4 + 3 + 1];
	static short which;									//定義兩個靜態數組,可容納最多12組IP類地址,最大程度防止指針越界!
	uchar* chIP;
	chIP = (uchar*)&ulIP;								//取ulIP的地址,并強制轉化為無符號字符型指針
	which = (which + 1 == IPTOSBUFFERS ? 0 : which + 1); 
	sprintf(output[which], "%d.%d.%d.%d", chIP[0], chIP[1], chIP[2], chIP[3]); 
	return output[which];
}

int countCh(char* chIn){								//計算字符數組長度
	int i = 0;
	while (chIn[i++] != 0);
	return i;
}

ulint ulSeleIP = 0;
int threadHandle = 0;
int in_thread = 0;
int finish_msg = 1;
cap_pack* capHeader = NULL;
cap_pack* curPoint_R = NULL;
cap_pack* curPoint_T = NULL;

void addPackItem(ulint SrcIP, ulint DstIP, BYTE Protocol, char RorT){
	cap_pack* p = capHeader;							//capHeader.next=.SrcIP=.Count = 4277075694(0xfeeefeee),.Portocol = 238(0xee)
	if (RorT) {											//增加RorT標志,以識別接收還是發送,可以少N次比較20061106
		if (curPoint_R) {
			if (curPoint_R->SrcIP == SrcIP) {
				if (curPoint_R->Protocol == Protocol) {
					curPoint_R->Count++;
					return;
				}
			}
		}
		while (p){
			if (p->SrcIP == SrcIP) {					//0xfeeefeee,CXX0030:Error:expression cannot be evaluated//SrcIP:192.168.0.254
				//if (p->DstIP == DstIP){
				if (p->Protocol == Protocol){
					p->Count++;
					curPoint_R = p;						//保留最后一次操作指針,因為完全同一類型的包再次出現的機率比較大20061108
					//AfxGetApp()->m_pMainWnd->MessageBox("modify one");
					return;
				}
				//}
			}
			if (!p->next) break;						//如果next為空則跳出,準備將新的結點賦于之20061103
			p = p->next;
		}
	}
	else{
		if (curPoint_T) {
			if (curPoint_T->DstIP == DstIP) {
				if (curPoint_T->Protocol == Protocol) {
					curPoint_T->Count++;
					return;
				}
			}
		}
		while (p){
			//if (p->SrcIP == SrcIP) {
			if (p->DstIP == DstIP){
				if (p->Protocol == Protocol){
					p->Count++;
					curPoint_T = p;
					//AfxGetApp()->m_pMainWnd->MessageBox("modify one");
					return;
				}
			}
			//}
			if (!p->next) break;						//如果next為空則跳出,準備將新的結點賦于之20061103
			p = p->next;
		}
	}
	cap_pack* capItem = (cap_pack*)malloc(sizeof(cap_pack));
	capItem->SrcIP = SrcIP;
	capItem->DstIP = DstIP;
	capItem->Protocol = Protocol;
	capItem->Count = 1;
	capItem->next = NULL;
	if (capHeader) {									//將鏈表接上20061103
		p->next = capItem;
	}
	else {
		capHeader = capItem;							//初始化時此頭為空,此處第一次會同賦值20061103
	}
	if (RorT) {											//在TCP連接中,一來一回會同時出現兩次變化,一個指針高速緩存反而成為累贅,所以調收與發兩個指針20061108
		curPoint_R = capItem;
	}
	else {
		curPoint_T = capItem;
	}
	//AfxGetApp()->m_pMainWnd->MessageBox("add one");
	return;
}

void freePackItem(cap_pack* cHeader){					//將整個鏈表所占空間釋放
	//AfxGetApp()->m_pMainWnd->MessageBox("free begin");
	cap_pack* P = cHeader;
	cap_pack* Pnext;
	//AfxGetApp()->m_pMainWnd->MessageBox("free continue");
	while (P){
		Pnext = P->next;
		free(P);
		P = Pnext;
		//AfxGetApp()->m_pMainWnd->MessageBox("free one");
	}
	capHeader = NULL;									//將鏈表頭指針及傳入、傳出包高速緩沖指針置空20061108
	curPoint_R = NULL;
	curPoint_T = NULL;
	//AfxGetApp()->m_pMainWnd->MessageBox("free all");
}

string proToCh(BYTE Protocol){							//將協議字段轉為字符串可讀
	switch(Protocol) {
	case IP:
		return "IP    ";
	case ICMP:
		return "ICMP  ";
	case IGMP:
		return "IGMP  ";
	case IPinIP:
		return "IPinIP";		
	case TCP:
		return "TCP   ";	
	case EGP:
		return "EGP   ";
	case UDP:
		return "UDP   ";
	case IPv6:
		return "IPv6  ";
	case RSVP:
		return "RSVP  ";
	case OSPF:
		return "OSPF  ";
	default:
		return "UNKNOW";
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本不卡高清视频| 久久综合九色综合97_久久久| 国产网红主播福利一区二区| 狠狠色丁香婷婷综合| 2023国产精华国产精品| 国产盗摄视频一区二区三区| 国产亚洲综合av| a级高清视频欧美日韩| 亚洲综合小说图片| 91精品午夜视频| 久久99精品久久久久久久久久久久| 欧美精品一区二区三区四区| 国产精品一级黄| 怡红院av一区二区三区| 欧美网站大全在线观看| 乱中年女人伦av一区二区| 久久青草欧美一区二区三区| 99精品视频在线免费观看| 亚洲福利视频一区二区| 精品国精品自拍自在线| 成人国产精品免费观看| 午夜久久久影院| 久久精品欧美日韩| 色哟哟亚洲精品| 久久精品国产在热久久| 综合av第一页| 日韩欧美国产高清| bt欧美亚洲午夜电影天堂| 亚洲bt欧美bt精品777| 久久久美女毛片| 欧美亚洲另类激情小说| 激情综合网激情| 一区av在线播放| 国产三级欧美三级| 欧美日韩中文另类| 成人涩涩免费视频| 亚洲va欧美va国产va天堂影院| 日韩精品影音先锋| 99麻豆久久久国产精品免费| 亚洲国产精品久久久久秋霞影院| 日韩欧美国产一区在线观看| 91麻豆精品久久久久蜜臀| 久草这里只有精品视频| 亚洲精品写真福利| 久久久一区二区| 宅男噜噜噜66一区二区66| www.一区二区| 国产一区二区三区免费看| 亚洲一区二区综合| 中文字幕在线观看一区二区| 日韩视频在线一区二区| 欧洲另类一二三四区| 国产91精品一区二区麻豆亚洲| 日韩在线一区二区三区| 亚洲视频一区在线观看| 久久久高清一区二区三区| 91精品蜜臀在线一区尤物| 色偷偷88欧美精品久久久| 粉嫩av一区二区三区在线播放| 日本一不卡视频| 亚洲一区二区三区四区在线观看| 日本一区二区三区高清不卡| 日韩精品专区在线影院重磅| 欧美日韩一级视频| 欧美羞羞免费网站| 色综合久久综合中文综合网| 北条麻妃一区二区三区| 国产suv一区二区三区88区| 精久久久久久久久久久| 麻豆精品国产传媒mv男同| 日韩制服丝袜av| 五月婷婷综合在线| 亚洲成av人片在线观看| 亚洲图片自拍偷拍| 亚洲国产一区视频| 亚洲二区在线观看| 亚洲国产成人tv| 亚洲成年人影院| 亚洲夂夂婷婷色拍ww47| 亚洲一区二区三区爽爽爽爽爽| 亚洲色图都市小说| 一区二区三区欧美久久| 一区二区三区**美女毛片| 一区二区三区免费观看| 亚洲一区二区三区四区不卡| 亚洲第一福利视频在线| 日本韩国精品在线| 欧美自拍丝袜亚洲| 欧美日韩国产免费| 在线观看91精品国产麻豆| 日韩欧美一级在线播放| 精品日产卡一卡二卡麻豆| 日韩一卡二卡三卡国产欧美| 欧美一级欧美三级在线观看| 日韩欧美在线1卡| 精品国产91乱码一区二区三区| 久久综合色综合88| 国产精品视频线看| 亚洲精品中文在线观看| 天天做天天摸天天爽国产一区 | 91一区二区三区在线观看| 99免费精品视频| 欧美视频第二页| 欧美一区二区高清| 久久综合一区二区| 一区免费观看视频| 天天免费综合色| 国产一区二区三区四区在线观看| 高清在线成人网| 色噜噜夜夜夜综合网| 欧美久久久久久久久中文字幕| 日韩欧美黄色影院| 中文字幕亚洲综合久久菠萝蜜| 亚洲图片欧美视频| 久久电影国产免费久久电影| 成人黄色大片在线观看| 欧美日韩色综合| 国产三级精品三级| 亚洲小少妇裸体bbw| 狠狠色丁香久久婷婷综合_中| 99re这里都是精品| 日韩视频国产视频| 亚洲欧美日韩国产一区二区三区| 日日摸夜夜添夜夜添亚洲女人| 国产精品123| 欧美人妖巨大在线| 中文字幕精品综合| 日本sm残虐另类| 色综合激情久久| 久久综合中文字幕| 亚洲va韩国va欧美va| 粉嫩一区二区三区在线看| 欧美精品一级二级| 最新日韩av在线| 国产一区二区91| 在线成人免费视频| 亚洲激情六月丁香| 成人精品免费视频| 精品理论电影在线观看| 亚洲成人资源在线| 91一区二区三区在线播放| 国产亚洲成aⅴ人片在线观看| 亚洲国产精品久久久久秋霞影院| 成人中文字幕在线| 精品成人a区在线观看| 亚洲综合清纯丝袜自拍| av一区二区三区四区| 久久影院午夜论| 精品一区二区三区在线播放视频| 欧美日韩在线免费视频| 亚洲区小说区图片区qvod| 国产电影一区在线| 精品国产麻豆免费人成网站| 亚洲3atv精品一区二区三区| 欧美激情艳妇裸体舞| 久久99精品国产| 欧美一级理论性理论a| 亚洲一区二区三区国产| 色综合亚洲欧洲| 亚洲欧洲精品一区二区三区不卡 | 久久综合九色欧美综合狠狠 | 综合亚洲深深色噜噜狠狠网站| 国产传媒欧美日韩成人| 久久免费精品国产久精品久久久久| 日韩av在线发布| 欧美日韩大陆一区二区| 亚洲二区在线视频| 欧美日韩亚洲不卡| 亚洲bdsm女犯bdsm网站| 欧美日韩午夜在线视频| 亚洲一二三区视频在线观看| 在线观看亚洲精品| 亚洲一区二区三区四区五区中文 | 欧美色图12p| 亚洲自拍偷拍麻豆| 欧美日韩精品欧美日韩精品一 | 国产精品三级视频| 成人美女视频在线观看| 国产精品成人一区二区三区夜夜夜| 成人免费黄色大片| 亚洲人xxxx| 欧美日韩高清在线播放| 日韩vs国产vs欧美| 久久综合九色综合欧美就去吻| 国产美女精品在线| 国产精品女主播av| 色综合久久中文字幕综合网| 一区二区三区日韩精品| 欧美日韩国产免费| 久久99精品久久久久| 欧美国产一区视频在线观看| 99re成人在线| 午夜精品久久久久久久久久久| 欧美一级理论片| 国产成人精品一区二| 一区二区在线电影| 欧美一级欧美一级在线播放| 国产精品123| 一区二区三区小说| 日韩女优毛片在线|