中国协议分析论坛's Archiver

gaochang2008 发表于 2008-2-24 09:28

数据包解码

老是老下大家的东西, 老觉的不好意思 ,自己也为大家做个贡献

在代码中简可以将数据报保存在文件中(路径可以修改 也可以使用宏的形势),  之后可以使用 解包工具(比如 wireshake ) 打开 .  



#include <stdio.h>
#include <stdlib.h>

#include <stdio.h>
#include <stdlib.h>
#include <pcap.h>
#include <netinet/in.h>
#include <netinet/if_ether.h>
#include "DecodePacket.h"



#define TURE 1
main()

{
               
        pcap_t *handle;
        pcap_t *adhandle;
        char *dev;            
        pcap_dumper_t* dumpfile;
        struct pcap_pkthdr* header;
        bpf_u_int32 mask;                     /* Our netmask */
        bpf_u_int32 net;   
       
        char errbuf[PCAP_ERRBUF_SIZE];
       
        // 鎵撳紑缃戝崱锛屽苟涓旇缃负娣锋潅妯″紡
        dev = pcap_lookupdev(errbuf);
                /* Find the properties for the device */
        pcap_lookupnet(dev, &net, &mask, errbuf);
        /* Open the session in promiscuous mode */
        adhandle = pcap_open_live(dev, BUFSIZ, 1, 0, errbuf);

        //adhandle=pcap_open_live(handle,65535,1,1000,errbuf)锛?
       
       
       
        // 寤虹珛瀛樺偍鎴幏鏁版嵁鍖呯殑鏂囦欢
       
       
       
        int re;
        int pcap_ret = 0;
       
        //pcap_pkthdr* header; // Header
       
        u_char* pkt_data; // 鏁版嵁鍖呭唴瀹规寚閽?        dumpfile=pcap_dump_open(adhandle, "/tmp/savefile");
        // 浠庣綉鍗℃垨鑰呮枃浠朵腑涓嶅仠璇诲彇鏁版嵁鍖呬俊鎭?#if 0
        while((re=pcap_next_ex(adhandle,&header,(const u_char**)&pkt_data))>=0)
       
        {
          
        // 灏嗘崟鑾风殑鏁版嵁鍖呭瓨鍏ユ枃浠?               
               
               
                pcap_dump((unsigned char*)dumpfile,header,pkt_data);
                decodethepacket(pkt_data);
                printf("the pack = %0xd" ,pkt_data);
               
       
        }
#endif
        while (TURE)
        {
                pcap_ret = pcap_loop(adhandle, -1 , (pcap_handler) ProcessPacket, NULL);
            if (pcap_ret < 0)
            {
                    printf("havent getten the packet\n");//闇

chairmankfo 发表于 2008-2-26 19:07

谢谢楼主了

littlebob724909 发表于 2008-2-27 21:08

谢谢!

bluelove_5 发表于 2008-3-18 22:41

3KS

f308418 发表于 2008-3-20 19:45

好,谢谢

judy 发表于 2008-3-28 23:29

thank you!

akuy 发表于 2008-4-2 16:42

3ks~~~

hbwh110 发表于 2008-4-4 22:50

3ks~~~

lovewujiange 发表于 2008-4-8 08:19

谢谢楼主

rcnan 发表于 2008-6-9 22:25

没全啊 !怎么是半个程序呢?

kevin9527 发表于 2008-6-10 16:31

谢谢楼主

谢谢楼主

vincent_he 发表于 2008-8-13 10:07

没看明白,注释还是乱码阿

unandy 发表于 2008-8-13 23:36

......不完全哎  注释有很严重的问题啊 ~~  重新发一份吧   还是程序的具体用途也解释下啊~~

liyeying 发表于 2008-8-14 00:41

怎么没有下载的啊

:-)

wdw_smile 发表于 2008-10-12 04:01

赞一个

cnpafchin 发表于 2008-10-13 19:05

怎么注释的部分是那个样子的呢

wildlife 发表于 2008-10-20 06:36

怎么我看的不全啊??

页: [1]

Powered by cnpaf.net 6.1.0  © 2001-2007 中国协议分析网