?? packetchap.cpp
字號:
//---------------------------------------------------------------------------
#pragma hdrstop
#include "PacketCHAP.h"
#include "Functions.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
void PacketCHAPParser(unsigned char *p_data,int index,Layer layer,Sel *SelInfo,NodeInfo *nodes0,
NodeInfo *nodes1,NodeInfo *nodes2,TTreeView *tvPacket,unsigned int datalength)
{
TTreeNode* mNodex;
PACKET_CHAP PChap;
mNodex = tvPacket->Items->Add(tvPacket->Selected,"CHAP ( Challenge Handshake Authentication Protocol )");
nodes0->Node[layer.layer1] = mNodex;
if((index+4)>datalength){
tvPacket->Items->Add(tvPacket->Selected,"[ Malformed BAP packet. Remaining bytes don't fit an BAP packet. Possibly due to bad decoding ]");
return;
}
SelInfo->Start1[layer.layer1] = index;
PChap.Code = *(p_data+index);
SelInfo->Start2[layer.layer1][0] = index;
index += 1;
SelInfo->End2[layer.layer1][0] = index;
nodes1->Node[layer.layer2++] = tvPacket->Items->AddChild(mNodex,"Code : 0x"+IntToHex(PChap.Code,2)+" ( "+IntToStr(PChap.Code)+" ) ");
PChap.Identifier = *(p_data+index);
SelInfo->Start2[layer.layer1][1] = index;
index += 1;
SelInfo->End2[layer.layer1][1] = index;
nodes1->Node[layer.layer2++] = tvPacket->Items->AddChild(mNodex,"Identifier : 0x"+IntToHex(PChap.Identifier,2)+" ( "+IntToStr(PChap.Identifier)+" ) ");
PChap.Length = Get2Bytes(p_data, index,1);
SelInfo->Start2[layer.layer1][2] = index;
index += 2;
SelInfo->End2[layer.layer1][2] = index;
nodes1->Node[layer.layer2++] = tvPacket->Items->AddChild(mNodex,"Length : 0x"+IntToHex(PChap.Length,4)+" ( "+IntToStr(PChap.Length)+" ) ");
SelInfo->Start2[layer.layer1][3] = index;
index = datalength;
SelInfo->End2[layer.layer1][3] = index;
nodes1->Node[layer.layer2++] = tvPacket->Items->AddChild(mNodex,"Data");
SelInfo->End1[layer.layer1] = index;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -