freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

網(wǎng)絡嗅探器的設計與實現(xiàn)(編輯修改稿)

2025-07-07 21:59 本頁面
 

【文章內容簡介】 (unsignedchar*)buf。 for(inti=0。i6。i++) {m_nDestAddr[i]=*pPos。 pPos++。 } for(i=0。i6。i++) {m_nSrcAddr[i]=*pPos。 pPos++。 } m_nType=(*pPos)*0x100+(*(pPos+1))。 } voidCFramePacket::GetMacSrcAddr(char*str) {sprintf(str,%02X%02X%02X%02X%02X%02X,m_nSrcAddr[0],m_nSrcAddr[1],m_nSrcAddr[2],m_nSrcAddr[3],m_nSrcAddr[4],m_nSrcAddr[5])。 } CStringCFramePacket::GetMacSrcAddr() {CStringstr。 (%02X%02X%02X%02X%02X%02X,m_nSrcAddr[0],m_nSrcAddr[1],m_nSrcAddr[2],m_nSrcAddr[3],m_nSrcAddr[4],m_nSrcAddr[5])。 returnstr。 } 。 intCFramePacket::GetType() {returnm_nType。} ICMP報文協(xié)議包 //:implementationoftheCICMPPacketclass. CICMPPacket::CICMPPacket(){} CICMPPacket::~CICMPPacket(){} IP 報文協(xié)議包 //:implementationoftheCIPPacketclass. //用于初始化 IP 頭信息 CIPPacket::CIPPacket(constunsignedchar*buf,intbuflen) {unsignedchar*pos。 pos=(unsignedchar*)buf。 m_nVersion=*pos/16。 m_nHeaderLength=*pos%16。 pos++。 m_nServiceType=*pos。 m_nPrecedence=(*posamp。16)*4+(*posamp。8)*2+(*posamp。4)。 if(*posamp。16)m_bDelay=true。 elsem_bDelay=false。 。 。 m_nFragOffSet=(*pos%32)*256+(*(pos+1))。 pos+=2。 m_nTTL=*pos。 pos++。 m_nProtocol=*pos。 pos++。 m_nCheckSum=(*pos)*256+(*(pos+1))。 pos+=2。 m_lSrcIP=(*pos)*0x1000000+(*(pos+1))*0x10000+(*(pos+2))*0x100+(*(pos+3))。 pos+=4。 m_lDestIP=(*pos)*0x1000000+(*(pos+1))*0x10000+(*(pos+2))*0x100+(*(pos+3))。 if(m_nHeaderLength5) {pos+=4。 m_nOptLength=(m_nHeaderLength5)*4。 m_pOptions=newunsignedchar[m_nOptLength]。 memcpy(m_pOptions,buf+20,m_nOptLength)。 } else {m_nOptLength=0。 m_pOptions=NULL。 } pos=(unsignedchar*)(buf+m_nHeaderLength*4)。 m_nDataLength=m_uTotalLengthm_nHeaderLength*4。 if(m_nDataLength0) {m_pData=newunsignedchar[m_nDataLength]。 memcpy(m_pData,buf+m_nHeaderLength*4,m_nDataLength)。 } Elsem_pData=NULL。 } CStringCIPPacket::GetProtocol() {CStringstr。 switch(m_nProtocol) {case6:(TCP)。break。 case17:(UDP)。break。 case1:(ICMP)。break。 case89:(OSPF)。break。 default:(%d,m_nProtocol)。 } returnstr。 } CStringCIPPacket::GetDestIP() {CStringstr。 inttemp=m_lDestIP。 unsignedchari0,i1,i2,i3。 i0=(tempamp。0xff000000)/0x1000000。 i1=(tempamp。0x00ff0000)/0x10000。 i2=(tempamp。0x0000ff00)/0x100。 i3=tempamp。0x000000ff。 (%003u.%003u.%003u.%003u,i0,i1,i2,i3)。 returnstr。 } CStringCIPPacket::GetSrcIP() {CStringstr。 inttemp=m_lSrcIP。 unsignedchari0,i1,i2,i3。 i0=(tempamp。0xff000000)/0x1000000。 i1=(tempamp。0x00ff0000)/0x10000。 i2=(tempamp。0x0000ff00)/0x100。 i3=tempamp。0x000000ff。 (%003u.%003u.%003u.%003u,i0,i1,i2,i3)。 returnstr。 } unsignedchar*CIPPacket::GetTData() { if(m_pData!=NULL) returnm_pData。 returnNULL。 } int CIPPacket::GetDataLength() {returnm_nDataLength。} //得到版本號 CString CIPPacket::GetVersion() {returnGetInt(m_nVersion)。} 。 數(shù)據(jù)導出 //:implementationfile COutputDataDlg::COutputDataDlg(CWnd*pParent/*=NULL*/) :CDialog(COutputDataDlg::IDD,pParent) {m_strDirPath=_T()。 m_strFileName=_T()。 } voidCOutputDataDlg::DoDataExchange(CDataExchange*pDX) {CDialog::DoDataExchange(pDX)。 DDX_Text(pDX,IDC_EDIT_DIRPATH,m_strDirPath)。 DDX_Text(pDX,IDC_EDIT_FILENAME,m_strFileName)。 } BEGIN_MESSAGE_MAP(COutputDataDlg,CDialog) ON_BN_CLICKED(IDC_BUTTON_SELECTIONDIR,OnButtonSelectiondir) END_MESSAGE_MAP() voidCOutputDataDlg::OnButtonSelectiondir() {UpdateData()。 CDirDialogdlg。 if((this)0) {m_strDirPath=。 } UpdateData(false)。 } voidCOutputDataDlg::OnOK() {UpdateData()。 if(()=0) {AfxMessageBox(文件名為空 )。 return。 } elseif((.xml)=0) {m_strFileName+=.xml。} if(()=0) {AfxMessageBox(文件路徑為空 )。 return。 } UpdateData(false)。 CDialog::OnOK()。 } BOOLCOutputDataDlg::OnInitDialog() {CDialog::OnInitDialog()。 structtm*p。 charbuf[40]。 longltime。 time(amp。ltime)。 p=localtime(amp。ltime)。 strftime(buf,29,%a%d%b%Y%H%M%SGMT,p)。 UpdateData()。 (%s 的數(shù)據(jù)文件 ,buf)。 UpdateData(false)。 returnTRUE。 } RARP協(xié)議 //:implementationoftheCRARPPacketclass. CRARPPacket::CRARPPacket(){} CRARPPacket::~CRARPPacket(){} TCP 報文協(xié)議 //:implementationoftheCTCPPacketclass. CTCPPacket::CTCPPacket(unsignedchar*buf,intbuflen) {unsignedchar*pos。 pos=(unsignedchar*)buf。 m_nSrcPort=(*pos)*0x100+(*(pos+1))。 pos+=2。 m_nDestPort=(*pos)*0x100+(*(pos+1))。 pos+=2。 m_uSeqNum=(*pos)*0x1000000+(*(pos+1))*0x10000+(*(pos+2))*0x100+(*(pos+3))。 pos+=4。 m_uAckNum=(*pos)*0x1000000+(*(pos+1))*0x10000+(*(pos+2))*0x100+(*(pos+3))。 pos+=4。 m_nHeadLen=(*pos)/16。 pos++。 if(*posamp。0x20)m_bURG=true。 elsem_bURG=false。 if(*posamp。0x10)m_bACK=true。 elsem_bACK=false。 if(*posamp。0x08)m_bPSH=true。 elsem_bPSH=false。 if(*posamp。0x04)m_bRST=true。 elsem_bRST=false。 if(*posamp。0x02)m_bSYN=true。 elsem_bSYN=false。 if(*posamp。0x01)m_bFIN=true。 elsem_bFIN=false。 pos++。 m_nWindowSize=(*pos)*0x100+(*(pos+1))。 pos+=2。 m_nCheckSum=(*pos)*0x100+(*(pos+1))。 pos+=2。 m_nUrgPos=(*pos)*0x100+(*(pos+1))。 if(m_nHeadLen5) {pos+=2。 m_nOptLen=m_nHeadLen*420。 m_pOptions=newunsignedchar[m_nOptLen]。 memcpy(m_pOptions,buf+20,m_nOptLen)。 } else {m_nOptLen=0。 m_pOptions=NULL。 } pos=(unsignedchar*)(buf+m_nHeadLen*4)。 m_nDataLen=buflenm_nHeadLen*4。 if(m_nDataLen0) {m_pData=newunsignedchar[m_nDataLen]。 memcpy(m_pData,buf+m_nHeadLen*4,m_nDataLen)。 } else {m_pData=NULL。 m_nDataLen=0。 } } CStringCTCPPacket::GetSrcPort() {return GetStr(m_nSrcPort)。} CStringCTCPPacket::GetDestPort() {return GetStr(m_nDestPort)。} CStringCTCPPacket::GetSeqNum() {returnGetStr(m_uSeqNum)。//順序號 } 。 CStringCTCPPacket::GetStr(unsignedintnNum,unsignedchar*pData,boolnFlag) {CStringstr。 if(nFlag) (%u,nNum)。 else {if(pData!
點擊復制文檔內容
高考資料相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1