diff options
author | Alexei Starovoitov <ast@fb.com> | 2016-04-06 18:43:28 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-04-07 21:04:26 -0400 |
commit | 32bbe0078afe86a8bf4c67c6b3477781b15e94dc (patch) | |
tree | 8c5290f51108de3a2c98cb7171942fb9d5e36ab2 /include/linux/bpf.h | |
parent | 9940d67c93b5bb7ddcf862b41b1847cb728186c4 (diff) | |
download | lwn-32bbe0078afe86a8bf4c67c6b3477781b15e94dc.tar.gz lwn-32bbe0078afe86a8bf4c67c6b3477781b15e94dc.zip |
bpf: sanitize bpf tracepoint access
during bpf program loading remember the last byte of ctx access
and at the time of attaching the program to tracepoint check that
the program doesn't access bytes beyond defined in tracepoint fields
This also disallows access to __dynamic_array fields, but can be
relaxed in the future.
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/bpf.h')
-rw-r--r-- | include/linux/bpf.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/bpf.h b/include/linux/bpf.h index 198f6ace70ec..b2365a6eba3d 100644 --- a/include/linux/bpf.h +++ b/include/linux/bpf.h @@ -131,6 +131,7 @@ struct bpf_prog_type_list { struct bpf_prog_aux { atomic_t refcnt; u32 used_map_cnt; + u32 max_ctx_offset; const struct bpf_verifier_ops *ops; struct bpf_map **used_maps; struct bpf_prog *prog; |