bpf: verifier: add checks for BPF_ABS | BPF_IND instructions
authorAlexei Starovoitov <ast@plumgrid.com>
Mon, 1 Dec 2014 23:06:34 +0000 (15:06 -0800)
committerDavid S. Miller <davem@davemloft.net>
Sat, 6 Dec 2014 05:47:32 +0000 (21:47 -0800)
commitddd872bc3098f9d9abe1680a6b2013e59e3337f7
treebe98ca10e99f38fc5f84e94bacee95db64183b15
parentf51a5e82ea9aaf05106c00d976e772ca384a9199
bpf: verifier: add checks for BPF_ABS | BPF_IND instructions

introduce program type BPF_PROG_TYPE_SOCKET_FILTER that is used
for attaching programs to sockets where ctx == skb.

add verifier checks for ABS/IND instructions which can only be seen
in socket filters, therefore the check:
  if (env->prog->aux->prog_type != BPF_PROG_TYPE_SOCKET_FILTER)
    verbose("BPF_LD_ABS|IND instructions are only allowed in socket filters\n");

Signed-off-by: Alexei Starovoitov <ast@plumgrid.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/uapi/linux/bpf.h
kernel/bpf/verifier.c