bpf: fix check of allowed specifiers in bpf_trace_printk
authorMartynas Pumputis <m@lambda.lt>
Fri, 23 Nov 2018 16:43:26 +0000 (17:43 +0100)
committerDaniel Borkmann <daniel@iogearbox.net>
Fri, 23 Nov 2018 20:54:14 +0000 (21:54 +0100)
commit1efb6ee3edea57f57f9fb05dba8dcb3f7333f61f
treecf6126f29233e979c5cf92c259ad59c315b6318e
parent813961de3ee6474dd5703e883471fd941d6c8f69
bpf: fix check of allowed specifiers in bpf_trace_printk

A format string consisting of "%p" or "%s" followed by an invalid
specifier (e.g. "%p%\n" or "%s%") could pass the check which
would make format_decode (lib/vsprintf.c) to warn.

Fixes: 9c959c863f82 ("tracing: Allow BPF programs to call bpf_trace_printk()")
Reported-by: syzbot+1ec5c5ec949c4adaa0c4@syzkaller.appspotmail.com
Signed-off-by: Martynas Pumputis <m@lambda.lt>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
kernel/trace/bpf_trace.c