eBPF
をサポートするアプリケーションをビルドしたいCentOS 7
(カーネルのバージョンは です3.10.0
):
if(setsockopt(sock, SOL_SOCKET, SO_ATTACH_BPF, prog_fd, sizeof(prog_f)) {
......
}
そこで、4.0.5
バージョンをダウンロードし、次の構成を行います。
CONFIG_BPF=y
CONFIG_BPF_SYSCALL=y
次に、このリンク4.0.5
に従って、カーネル をビルドしてインストールします。
を実行make modules_install install
した後、まだSO_ATTACH_BPF
inがないことがわかり<asm-generic/socket.h>
ました。そのため、上記のコードは正常にコンパイルできません。
SO_ATTACH_BPF
ソケットオプションをサポートする Linux カーネルをビルドするには?