91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 3KB
    文件類型: .c
    金幣: 1
    下載: 0 次
    發布日期: 2021-05-28
  • 語言: C/C++
  • 標簽: IP??TCP??UDP??C代碼??

資源簡介

一個計算IP首部和TCP及UDP校驗和的驗證程序。使用方法:1.數據來源,用Wireshark抓包,復制...as a Hex Stream;2.右擊運行窗口的標題欄-->編輯-->粘貼-->回車,即可。本程序在Windows下,采用C語言開發,代碼里面注釋詳細。

資源截圖

代碼片段和文件信息

/***************************************************************************
?*?Copyright@caiyinwang@163.com.???????????????????????????????????????????*
?*?Author:Wang?Caiyin??????????????????????????????????????????????????????*
?*?Ver:0.1?????????????????????????????????????????????????????????????????*
?*?Date:2019-04-27?????????????????????????????????????????????????????????*
?*?Description:這是一個計算IP首部和TCP及UDP校驗和的驗證程序。??????????????*
?*?使用方法:1.數據來源,用Wireshark抓包,復制...as?a?Hex?Stream;?????????*
?*???????????2.右擊運行窗口的標題欄-->編輯-->粘貼-->回車,即可。???????????*
?***************************************************************************/

#include?
#include?



unsigned?ipheader[10]t_data[759]t;??//ipheader存儲IP首部數據,t_data存儲傳輸層數據,t為傳輸層數據類型。

//注意:傳輸層data從開頭取16bit,當結尾為8bit,將低8bit設為0x00;當然0x00不能算為數據長度

int?main()
{
void?read_data();
void?ipCheckSum();
void?tCheckSum();

printf(“請輸入您用wireshark抓包獲取的數據:“);
read_data();

printf(“\n********************************************************************************\n“);
if(t==6)
{
printf(“????您輸入的是TCP數據。\n“);
ipCheckSum();
tCheckSum();
}
else?if(t==17)
{
printf(“????您輸入的是UDP數據。\n“);
ipCheckSum();
tCheckSum();
}
else
printf(“????您輸入的數據有誤。\n“);

system(“pause“);

return?0;
}

void?ipCheckSum()
{
unsigned?sum=0;
int?i;
printf(“\n????IP首部:“);
for(i=0;i<10;i++)
{
printf(“%04x?“ipheader[i]);
sum=sum+~ipheader[i]%0x10000;
}
s

評論

共有 條評論