strace/tests/mmsg.test
Masatake YAMATO 993198deb3 tests: add a test for decoding and dumping of recvmmsg/sendmmsg
* configure (AC_CHECK_FUNCS): Add sendmmsg.
* tests/mmsg.c: New file.
* tests/mmsg.expected: New file.
* tests/mmsg.test: New test.
* tests/.gitignore: Add mmsg.
* tests/Makefile.am (CHECK_PROGRAMS): Add mmsg.
(TESTS): Add mmsg.test.
(EXTRA_DIST): Add mmsg.expected.

Signed-off-by: Masatake YAMATO <yamato@redhat.com>
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2014-11-11 15:45:26 +00:00

32 lines
588 B
Bash
Executable File

#!/bin/sh
# Check how iovecs in struct mmsghdr are decoded.
. "${srcdir=.}/init.sh"
mmsg_expected="${srcdir=.}/mmsg.expected"
check_prog diff
cat "$mmsg_expected" > /dev/null ||
fail_ "$mmsg_expected is not available"
./mmsg || {
if [ $? -eq 77 ]; then
framework_skip_ 'sendmmsg/recvmmsg syscalls are not available'
else
fail_ 'mmsg failed'
fi
}
args="-e trace=recvmmsg,sendmmsg -e read=0 -e write=1 -o $LOG ./mmsg"
$STRACE $args || {
cat $LOG
fail_ "$STRACE $args failed"
}
diff "$mmsg_expected" $LOG ||
fail_ "$STRACE $args failed to decode mmsghdr properly"
exit 0