日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。
4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.3-RELEASE-K, 13.0-RELEASE-K から 13.2-RELEASE-K は、全翻訳済み)
13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。
Table of Contents
PCAP_NEXT_EX(3) PCAP_NEXT_EX(3) 名称 pcap_next_ex, pcap_next - pcap_t から次のパケットを読み込む 書式 #include <pcap/pcap.h> int pcap_next_ex(pcap_t *p, struct pcap_pkthdr **pkt_header, const u_char **pkt_data); const u_char *pcap_next(pcap_t *p, struct pcap_pkthdr *h); 解説 pcap_next_ex() は、次のパケットを読み込んで、成功/失敗の指示を返しま す。パケットが問題なしで読み込まれたなら、pkt_header 引数によって指され たポインタは、パケットのために pcap_pkthdr 構造体を指すように設定され、 pkt_data 引数によって指されたポインタは、パケット中のデータを指すように 設定されます。struct pcap_pkthdr とパケットデータは、呼び出し側によって 解放することができず、pcap_next_ex(), pcap_next(), pcap_loop(3) または pcap_dispatch(3) への次の呼び出しの後に有効であることは保証されません。 コードが有効なままであるためにそれらを必要とするなら、それらのコピーを 行わなければなりません。 pcap_next() は、(1 の cnt を付けて pcap_dispatch() を呼び出すことによっ て) 次のパケットを読み込に、そのパケット中のデータへの u_char ポインタ を返します。パケットデータは、呼び出し側よって解放することができず、 pcap_next_ex(), pcap_next(), pcap_loop() または pcap_dispatch() への次 の呼び出しの後に有効であることは保証されません。コードが有効なままであ るためにそれらを必要とするなら、それらのコピーを行わなければなりませ ん。h によって指された pcap_pkthdr 構造体は、パケットのための適切な値で 満たされます。 パケットからのデータのバイトは、リンクレイヤのヘッダで始まります。リン クレイヤのヘッダの形式は、pcap_loop() または pcap_dispatch() にも渡され る pcap_t 値が渡されるとき、pcap_datalink(PCAP) ルーチンの返り値によっ て示されます。https://www.tcpdump.org/linktypes.html リスト値 pcap_datalink() は、それらの値に対応しているパケットの形式を返して、記 述することができます。それが返す値は、pcap_set_datalink(3) が呼び出され ない限り、そして呼び出されないなら、受信されたすべてのパケットに対して 有効となります。pcap_set_datalink() への成功した呼び出しの後に、すべて の続くパケットは、pcap_set_datalink() に渡されるリンクレイヤのヘッダタ イプ値によって指定されたタイプのリンクレイヤのヘッダがあります。 与えられたキャプチャまたは ``savefile`` のためのパケットが、イーサネッ トのための DLT_EN10MB のような、あらゆる与えられたリンクレイヤのヘッダ タイプがあることを仮定してはなりません。例えば、Linux の "any" デバイス は、たとえ、その時点のシステムのすべてのデバイスでも、DLT_LINUX_SLL の リンクレイヤのヘッダタイプがあり、オープンされた "any" デバイスには、 イーサネットのための DLT_EN10MB のような、いくつかの他のデータのリンク タイプがあります。 戻り値 pcap_next_ex() は、パケットが問題なしで読み込まれたなら、1 を返し、パ ケットがライブキャプチャ (捕獲) から読み込まれ、パケットバッファのタイ ムアウトの期限が切れたなら、0 を返し、パケットを読み込んでいる間にエ ラーが起こったなら、PCAP_ERROR を返し、パケットが ``savefile'' から読み 込まれていて、savefile から読み込むパケットがそれ以上のないなら、 PCAP_ERROR_BREAK を返します。PCAP_ERROR が返されるなら、pcap_geterr(3) または pcap_perror(3) は、取って来るか、またはエラーテキストを表示する 引数として p を付けて呼び出されます。 pcap_next() は、成功すればパケットデータへのポインタを返し、エラーが起 これるか、または、パケットがライブキャプチャ (捕獲) から読み込まれな かったなら、(例えば、パケットフィルタを渡さなかったので、それらが捨てら れたか、またはあらゆるパケットが到着する前に開始するパケットバッファの タイムアウトをサポートするプラットフォームで、あらゆるパケットが到着す る前にタイムアウトの期限が切れるなら、またはキャプチャ (捕獲) デバイス のためのファイル記述子が非ブロッキングモードであり、パケットが読み込で 利用可能でなかったなら) か、またはパケットが ``savefile'' で利用可能で なかったなら、NULL を返します。残念ながら、エラーが起こったかどうかを決 定する方法は、ありません。 関連項目 pcap(3) 25 July 2018 PCAP_NEXT_EX(3)