我使用WinPcap的驅動程序嗅探包, 所以我實際使用數據包轉儲的例子裏面得到pkt_data等,TCP IP檢查我失去了一些東西
當我處理TCP報頭我打印我的口我看到它80
但是當我試圖讓這樣的:
if(ntohl(tcpheader->source_port == 80) || (ntohl(tcpheader->dest_port == 80))) //doesnt work :(
{
printf("****************HTTP***********");
}
的,如果是不正確的,但 我在printf的很清楚地看到
printf(" |-Source Port : %u\n",ntohs(tcpheader->source_port));
printf(" |-Destination Port : %u\n",ntohs(tcpheader->dest_port));
其中之一是我的輸出80,但我從來沒有看到HTTP從上面,這樣看來我失去了一些東西,你可以請點我?
你應該調用ntohs(),而不是ntohl()。端口號是16位。 – EJP