diff options
author | Alexei Starovoitov <ast@plumgrid.com> | 2014-09-26 03:17:04 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-09-26 15:05:15 -0400 |
commit | 0246e64d9a5fcd4805198de59b9b5cf1f974eb41 (patch) | |
tree | 3a7b78d9f3dcfb255d0ac9ce5350cef1e195eddf /drivers/bus | |
parent | cbd357008604925355ae7b54a09137dabb81b580 (diff) |
bpf: handle pseudo BPF_LD_IMM64 insn
eBPF programs passed from userspace are using pseudo BPF_LD_IMM64 instructions
to refer to process-local map_fd. Scan the program for such instructions and
if FDs are valid, convert them to 'struct bpf_map' pointers which will be used
by verifier to check access to maps in bpf_map_lookup/update() calls.
If program passes verifier, convert pseudo BPF_LD_IMM64 into generic by dropping
BPF_PSEUDO_MAP_FD flag.
Note that eBPF interpreter is generic and knows nothing about pseudo insns.
Signed-off-by: Alexei Starovoitov <ast@plumgrid.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/bus')
0 files changed, 0 insertions, 0 deletions