From: Chang-Hsien Tsai Date: Sun, 19 May 2019 09:05:44 +0000 (+0000) Subject: samples, bpf: fix to change the buffer size for read() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=f7c2d64bac1be2ff32f8e4f500c6e5429c1003e0;p=linux.git samples, bpf: fix to change the buffer size for read() If the trace for read is larger than 4096, the return value sz will be 4096. This results in off-by-one error on buf: static char buf[4096]; ssize_t sz; sz = read(trace_fd, buf, sizeof(buf)); if (sz > 0) { buf[sz] = 0; puts(buf); } Signed-off-by: Chang-Hsien Tsai Signed-off-by: Daniel Borkmann --- diff --git a/samples/bpf/bpf_load.c b/samples/bpf/bpf_load.c index eae7b635343d1..6e87cc831e842 100644 --- a/samples/bpf/bpf_load.c +++ b/samples/bpf/bpf_load.c @@ -678,7 +678,7 @@ void read_trace_pipe(void) static char buf[4096]; ssize_t sz; - sz = read(trace_fd, buf, sizeof(buf)); + sz = read(trace_fd, buf, sizeof(buf) - 1); if (sz > 0) { buf[sz] = 0; puts(buf);