]> granicus.if.org Git - strace/blob - bpf_filter.h
maint: update for linux v5.3-rc8
[strace] / bpf_filter.h
1 /*
2  * Classic BPF filter block.
3  *
4  * Copyright (c) 2015-2018 Dmitry V. Levin <ldv@altlinux.org>
5  * All rights reserved.
6  *
7  * SPDX-License-Identifier: LGPL-2.1-or-later
8  */
9
10 #ifndef STRACE_BPF_FILTER_H
11 # define STRACE_BPF_FILTER_H
12
13 struct bpf_filter_block {
14         uint16_t code;
15         uint8_t jt;
16         uint8_t jf;
17         uint32_t k;
18 };
19
20 typedef bool (*print_bpf_filter_fn)(const struct bpf_filter_block *);
21
22 extern void
23 print_bpf_fprog(struct tcb *const tcp, const kernel_ulong_t addr,
24                 const unsigned short len, const print_bpf_filter_fn print_k);
25
26 extern void
27 decode_bpf_fprog(struct tcb *const tcp, const kernel_ulong_t addr,
28                  const print_bpf_filter_fn print_k);
29
30 #endif /* !STRACE_BPF_FILTER_H */