From: Dmitry V. Levin Date: Tue, 22 Sep 2015 21:22:37 +0000 (+0000) Subject: tests: convert ioctl.test from match_grep to match_diff X-Git-Tag: v4.11~163 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=fb2a54300eb9f4ef8ff6d51b7edbe25596d8b547;p=strace tests: convert ioctl.test from match_grep to match_diff * tests/ioctl.c (main): Print expected output. * tests/ioctl.test: Use match_diff instead of match_grep. * tests/ioctl.expected: Remove. * tests/Makefile.am (EXTRA_DIST): Remove ioctl.expected. --- diff --git a/tests/Makefile.am b/tests/Makefile.am index bc1157d5..c52f2760 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -202,7 +202,6 @@ EXTRA_DIST = init.sh run.sh match.awk \ filter-unavailable.expected \ getdents.awk \ getdents.out \ - ioctl.expected \ ip_mreq.expected \ ipc.sh \ ipc_msgbuf.expected \ diff --git a/tests/ioctl.c b/tests/ioctl.c index d2807f5a..7f9b84ce 100644 --- a/tests/ioctl.c +++ b/tests/ioctl.c @@ -1,7 +1,9 @@ #ifdef HAVE_CONFIG_H # include "config.h" #endif + #include +#include #include #include #include @@ -30,17 +32,37 @@ int main(void ) { struct termios tty; - uint64_t data; + uint64_t data = 0; + + (void) ioctl(-1, TCGETS, &tty); + printf("ioctl(-1, TCGETS, %p)" + " = -1 EBADF (Bad file descriptor)\n", &tty); + + (void) ioctl(-1, MMTIMER_GETRES, &data); + printf("ioctl(-1, MMTIMER_GETRES, %p)" + " = -1 EBADF (Bad file descriptor)\n", &data); + + (void) ioctl(-1, VIDIOC_ENUMINPUT, 0); + printf("ioctl(-1, VIDIOC_ENUMINPUT, 0)" + " = -1 EBADF (Bad file descriptor)\n"); + + (void) ioctl(-1, HIDIOCGVERSION, &data); + printf("ioctl(-1, HIDIOCGRDESCSIZE or HIDIOCGVERSION, %p)" + " = -1 EBADF (Bad file descriptor)\n", &data); + + (void) ioctl(-1, HIDIOCGPHYS(8), &data); + printf("ioctl(-1, HIDIOCGPHYS(8), %p)" + " = -1 EBADF (Bad file descriptor)\n", &data); + + (void) ioctl(-1, EVIOCGBIT(EV_KEY, 8), &data); + printf("ioctl(-1, EVIOCGBIT(EV_KEY, 8), %p)" + " = -1 EBADF (Bad file descriptor)\n", &data); - if (ioctl(-1, TCGETS, &tty) != -1 || - ioctl(-1, MMTIMER_GETRES, &data) != -1 || - ioctl(-1, VIDIOC_ENUMINPUT, 0) != -1 || - ioctl(-1, HIDIOCGVERSION, &data) != -1 || - ioctl(-1, HIDIOCGPHYS(8), &data) != -1 || - ioctl(-1, EVIOCGBIT(EV_KEY, 8), &data) != -1 || - ioctl(-1, _IOR(0xde, 0xad, data), &data) != -1) - return 77; + (void) ioctl(-1, _IOR(0xde, 0xad, data), &data); + printf("ioctl(-1, _IOC(_IOC_READ, 0xde, 0xad, 0x08), %p)" + " = -1 EBADF (Bad file descriptor)\n", &data); + puts("+++ exited with 0 +++"); return 0; } diff --git a/tests/ioctl.expected b/tests/ioctl.expected deleted file mode 100644 index 6b46685c..00000000 --- a/tests/ioctl.expected +++ /dev/null @@ -1,7 +0,0 @@ -ioctl\(-1, TCGETS, 0x[0-9a-f]+\) += -1 EBADF .* -ioctl\(-1, MMTIMER_GETRES, 0x[0-9a-f]+\) += -1 EBADF .* -ioctl\(-1, VIDIOC_ENUMINPUT, 0\) += -1 EBADF .* -ioctl\(-1, HIDIOCGRDESCSIZE or HIDIOCGVERSION, 0x[0-9a-f]+\) += -1 EBADF .* -ioctl\(-1, HIDIOCGPHYS\(8\), 0x[0-9a-f]+\) += -1 EBADF .* -ioctl\(-1, EVIOCGBIT\(EV_KEY, 8\), 0x[0-9a-f]+\) += -1 EBADF .* -ioctl\(-1, _IOC\(_IOC_READ, 0xde, 0xad, 0x08\), 0x[0-9a-f]+\) += -1 EBADF .* diff --git a/tests/ioctl.test b/tests/ioctl.test index 8c2a9baa..49be2f6f 100755 --- a/tests/ioctl.test +++ b/tests/ioctl.test @@ -4,8 +4,10 @@ . "${srcdir=.}/init.sh" -run_prog -run_strace -e ioctl $args -match_grep +run_prog > /dev/null +OUT="$LOG.out" +run_strace -a16 -e ioctl $args > "$OUT" +match_diff "$OUT" "$LOG" +rm -f "$OUT" exit 0