Skip to content

Commit

Permalink
selftest for default_file_splice_read() infoleak
Browse files Browse the repository at this point in the history
bug fixed in commit b9dc6f6 ("fix a fencepost error in pipe_advance()")

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
  • Loading branch information
Al Viro committed Feb 19, 2017
1 parent 7880b43 commit b8826e5
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 0 deletions.
1 change: 1 addition & 0 deletions tools/testing/selftests/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ TARGETS += ptrace
TARGETS += seccomp
TARGETS += sigaltstack
TARGETS += size
TARGETS += splice
TARGETS += static_keys
TARGETS += sync
TARGETS += sysctl
Expand Down
8 changes: 8 additions & 0 deletions tools/testing/selftests/splice/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
TEST_PROGS := default_file_splice_read.sh
EXTRA := default_file_splice_read
all: $(TEST_PROGS) $(EXTRA)

include ../lib.mk

clean:
rm -fr $(TEST_PROGS) $(EXTRA)
8 changes: 8 additions & 0 deletions tools/testing/selftests/splice/default_file_splice_read.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#define _GNU_SOURCE
#include <fcntl.h>

int main(int argc, char **argv)
{
splice(0, 0, 1, 0, 1<<30, 0);
return 0;
}
7 changes: 7 additions & 0 deletions tools/testing/selftests/splice/default_file_splice_read.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#!/bin/sh
n=`./default_file_splice_read </dev/null | wc -c`

test "$n" = 0 && exit 0

echo "default_file_splice_read broken: leaked $n"
exit 1

0 comments on commit b8826e5

Please sign in to comment.