2012-02-08 12 views

答えて

0

ファイルヘッダーからどのような情報を取得しようとしていますか?

あなたがpcap_major_version()pcap_minor_version()pcap_snapshot()とスナップショットの長さ、およびpcap_datalink()とのリンク層型でメジャーとマイナーバージョンを取得することができます。タイムゾーンのオフセットとタイムスタンプの精度が有効であるという保証はありません(libpcapは両方とも0に設定されます)。 libpcap 1.1.0以降では、のpcap-ngファイルを読み取ることができます。のpcapファイルヘッダーがあります。あなたはのlibpcapでこれをしないことができますので

はlibpcapのは、直接あなたのファイルヘッダーを手に何のルーチンを提供していない、とあなたは型キャストは、ファイルヘッダ可能にする可能性が何を提供していません。ファイルヘッダーを読みたい場合は、に独自のコードを書き換えて libpcapを置き換える必要があります。そのコードでは、たとえばpcap-ngファイルを処理することはできません(デフォルトのファイルタイプはpcap-ngファイルを読むことができるlibpcapを使用するコードとは異なり、pcap-ngファイル内のすべてのネットワークインターフェイスが同じリンクレイヤヘッダータイプとスナップショットの長さを持つ限り、Wiresharkの次のリリース) libpcap 1.1.0以降)。

0

pcapファイルのヘッダーはlibpcapによって内部的に処理されます。手動で操作する必要はありません。

pcap_dump_openを使用して書き込み用にpcapファイルを開くことができます。

pcap_open_offlineを使用して読み込み用のpcapファイルを開くことができます。

+0

ファイルヘッダを読みたい場合は、ファイルハンドラをファイルヘッダ構造に型キャストすべきですか? @sander – user1192671

+0

@ user1192671:これはもう少し複雑です(例えば、ファイルの先頭に魔法の番号があり、これを解釈する必要があります)。しかし、 'pcap_fopen_offline'の実装をチェックして、pcapファイルのヘッダを読む方法を調べることができます。 libpcapは結局オープンソースです。 –

関連する問題