簡體   English   中英

pcap_next()函數應該放在數據包傳輸之前還是之后?

[英]pcap_next() function should be put before the packet transmission or after?

我想使用libpcap在tcp-3way握手中捕獲ACK數據包,代碼片段如下

   pcap_packet = pcap_next(pcap_handler, &pcap_header);
    if(pcap_packet !=NULL)
            printf("capture one packet with length of %d\n", pcap_header.len);

    // establish TCP connection with the server
    connect(sd_cli, (struct sockaddr *)&svr_addr, sizeof(svr_addr));

    process(pcap_packet);

我想知道應該將pcap_next()函數放在connect()之前還是connect()之后? 我在回調函數機制中迷了一點

誰能用這個例子解釋一下? 謝謝

您應該捕獲並發傳輸的數據包。 因此,最好使用線程。

但是,在您的情況下,請將connect放在pcap_next之前更有機會捕獲所需內容。 但是, connect本身是一種阻止方法,可能會丟失數據包。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM