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_BPFinがないことがわかり<asm-generic/socket.h>ました。そのため、上記のコードは正常にコンパイルできません。
SO_ATTACH_BPFソケットオプションをサポートする Linux カーネルをビルドするには?