1 #ifndef SANDBOXED_API_SANDBOX2_BPF_EVALUATOR_H_ 2 #define SANDBOXED_API_SANDBOX2_BPF_EVALUATOR_H_ 3 4 #include <linux/filter.h> 5 #include <linux/seccomp.h> 6 7 #include <cstdint> 8 9 #include "absl/status/statusor.h" 10 #include "absl/types/span.h" 11 12 namespace sandbox2::bpf { 13 14 // Evaluates a BPF program against a given seccomp_data. 15 // 16 // Returns the return value of the BPF program. 17 absl::StatusOr<uint32_t> Evaluate(absl::Span<const sock_filter> prog, 18 const struct seccomp_data& data); 19 20 } // namespace sandbox2::bpf 21 22 #endif // SANDBOXED_API_SANDBOX2_BPF_EVALUATOR_H_ 23