資源簡介
snif.rar

代碼片段和文件信息
#include? /*windows?socket的頭文件,系統定義的*/
#include?
#include?
#include?
#include?
#pragma?comment(lib“ws2_32.lib“) /*鏈接API相關連的Ws2_32.lib靜態庫*/
#define?MAX_HOSTNAME_LAN?255
#define?SIO_RCVALL?_WSAIOW(IOC_VENDOR1)
#define?MAX_ADDR_LEN?16
struct?ipheader?{
unsigned?char?ip_hl:4; /*header?length(報頭長度)*/
unsigned?char?ip_v:4; /*version(版本)*/
unsigned?char?ip_tos; /*type?os?service服務類型*/
unsigned?short?int?ip_len; /*total?length?(總長度)*/
unsigned?short?int?ip_id; /*identification?(標識符)*/
unsigned?short?int?ip_off; /*fragment?offset?field(段移位域)*/
unsigned?char?ip_ttl; /*time?to?live?(生存時間)*/
unsigned?char?ip_p; /*protocol(協議)*/
unsigned?short?int?ip_sum; /*checksum(校驗和)*/
unsigned?int?ip_src; /*source?address(源地址)*/
unsigned?int?ip_dst; /*destination?address(目的地址)*/
}; /*?total?ip?header?length:?20?bytes?(=160?bits)?*/
typedef?struct?tcpheader?{
unsigned?short?int?sport; /*source?port?(源端口號)*/
unsigned?short?int?dport; /*destination?port(目的端口號)*/
unsigned?int?th_seq; /*sequence?number(包的序列號)*/
unsigned?int?th_ack; /*acknowledgement?number(確認應答號)*/
unsigned?char?th_x:4; /*unused(未使用)*/
unsigned?char?th_off:4; /*data?offset(數據偏移量)*/
unsigned?char?Flags; /*標志全*/
unsigned?short?int?th_win; /*windows(窗口)*/
unsigned?short?int?th_sum; /*checksum(校驗和)*/
unsigned?short?int?th_urp; /*urgent?pointer(緊急指針)*/
}TCP_HDR;
typedef?struct?udphdr?{
unsigned?short?sport; /*source?port(源端口號)*/
unsigned?short?dport; /*destination?port(目的端口號)*/
unsigned?short?len; /*udp?length(udp長度)*/
unsigned?short?cksum; /*udp?checksum(udp校驗和)*/
}UDP_HDR;
void?main(){
SOCKET?sock;
WSADATA?wsd;
DWORD?dwBytesRet;
unsigned?int?optval?=?1;
unsigned?char?*dataudp*datatcp;
int?ipCount=0lentcp?lenudp;
SOCKADDR_IN?sasaSource?saDest;
struct?hostent?FAR?*?pHostent;
char?FAR?name[MAX_HOSTNAME_LAN];
char?szSourceIP[MAX_ADDR_LEN]?szDestIP[MAX_ADDR_LEN]RecvBuf[65535]?=?{0};
struct?udphdr?*pUdpheader;
struct?ipheader?*pIpheader;
struct?tcpheader?*pTcpheader;
WSAStartup(MAKEWORD(21)&wsd);
if?((sock?=?socket(AF_INET?SOCK_RAW?IPPROTO_IP))==SOCKET_ERROR)
exit(1);
gethostname(name?MAX_HOSTNAME_LAN);
pHostent?=?gethostbyname(name);
sa.sin_family?=?AF_INET;
sa.sin_port?=?htons(6000);
memcpy(&sa.sin_addr.S_un.S_addr?pHostent->h_addr_list[0]?pHostent->h_length);
bind(sock?(SOCKADDR?*)&sa?sizeof(sa)); /*bind()設定自己主機的IP地址和端口號*/
if?((WSAGetLastError())==10013)
exit(1);
WSAIoctl(sock?SIO_RCVALL?&optval?sizeof(optval)?NULL?0?&dwBytesRet?NULL?NULL);
pIpheader?=?(struct?ipheader?*)RecvBuf;
pTcpheader?=?(struct?tcpheader?*)(RecvBuf+?sizeof(struct?ipheader?));
pUdpheader?=?(struct?udphdr?*)?(RecvBuf+?sizeof(struct?ipheader?));
while?(1){
memset(RecvBuf?0?sizeof(RecvBuf));
recv(sock?RecvBuf?sizeof(RecvBuf)?0);
saSo
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1294??2011-11-25?17:21??snif\Debug\cl.command.1.tlog
?????文件??????29410??2011-11-25?17:21??snif\Debug\CL.read.1.tlog
?????文件????????550??2011-11-25?17:21??snif\Debug\CL.write.1.tlog
?????文件??????????2??2011-11-25?17:21??snif\Debug\li
?????文件??????????2??2011-11-25?17:21??snif\Debug\li
?????文件???????2658??2011-11-25?17:21??snif\Debug\li
?????文件???????6134??2011-11-25?17:21??snif\Debug\li
?????文件???????1294??2011-11-25?17:21??snif\Debug\li
?????文件?????400384??2011-11-25?17:21??snif\Debug\main.exe
?????文件????????406??2011-11-21?23:52??snif\Debug\main.exe.em
?????文件????????472??2011-11-25?17:21??snif\Debug\main.exe.em
?????文件????????381??2011-11-25?17:21??snif\Debug\main.exe.intermediate.manifest
?????文件?????954780??2011-11-25?17:21??snif\Debug\main.ilk
?????文件?????????62??2011-11-25?17:22??snif\Debug\main.lastbuildstate
?????文件???????3036??2011-11-25?17:22??snif\Debug\main.log
?????文件??????33737??2011-11-25?17:21??snif\Debug\main.obj
?????文件????1698816??2011-11-25?17:21??snif\Debug\main.pdb
?????文件????????204??2011-11-21?23:52??snif\Debug\main_manifest.rc
?????文件????????706??2011-11-25?17:22??snif\Debug\mt.command.1.tlog
?????文件????????530??2011-11-25?17:22??snif\Debug\mt.read.1.tlog
?????文件????????250??2011-11-25?17:22??snif\Debug\mt.write.1.tlog
?????文件????????938??2011-11-25?17:21??snif\Debug\rc.command.1.tlog
?????文件????????474??2011-11-25?17:21??snif\Debug\rc.read.1.tlog
?????文件????????490??2011-11-25?17:21??snif\Debug\rc.write.1.tlog
?????文件?????650240??2011-11-25?17:21??snif\Debug\vc100.idb
?????文件?????118784??2011-11-25?17:21??snif\Debug\vc100.pdb
?????文件?????148480??2011-11-21?23:29??snif\Debug\vc60.idb
?????文件??????77824??2011-11-21?23:18??snif\Debug\vc60.pdb
?????文件???????5418??2011-11-21?23:03??snif\main.cpp
?????文件???????3377??2011-11-21?23:18??snif\main.dsp
............此處省略12個文件信息
評論
共有 條評論