在 libseccomp 中,什么是 scmp_filter_ctx?它的用途是什么?

In libseccomp, what is scmp_filter_ctx? And what is it used for?

因为 scmp_filter_ctx 被定义为 void,实际存储的是什么? See seccomp header file.

一般来说什么是context

它没有被定义为 void,而是 void *,所以它是一个通用指针。

通过快速浏览文件,您 link 我会说它指向某个您无法访问(并且不需要知道)结构的对象。 context 似乎是存储 seccomp 需要工作的信息的对象,你只需要通过该头文件中公开的 API 函数来初始化、更新或使用它。

如果您真的想看看里面有什么,请阅读源代码:)。在 src/api.c it's apparently casted as a struct db_filter_col * 中,这当然不会暴露给用户。