FreeBSD カーネルで bpf_filter() の戻りコードは何ですか?
各戻りコードの意味は何ですか?
この問題に関するマニュアル ページ (リンク)は明確ではありません。
このbpf_filter()
関数は、パケット pkt の pc から始まるフィルター プログラムを実行します。wirelen 引数は元のパケットの長さで、buflen は存在するデータの量です。の buflen 値0
は特別です。これは、pkt が実際には mbuf チェーンへのポインターであることを示しています ( struct mbuf *
)。
戻り値
フィルタがない場合、bpf_filter()
関数は戻ります-1
(符号なし整数にキャスト)。それ以外の場合は、フィルター プログラムの結果を返します。
65535
一致するときと一致しないときに取得して0
います。戻り値の意味がわかりません65535
。
誰かがリターンコードを詳しく説明してもらえますかbpf_filter()
?