Dmitry V. Levin | 68d6424 | 2014-09-10 00:07:32 +0000 | [diff] [blame] | 1 | #!/bin/sh |
| 2 | |
| 3 | # Check that getdents/getdents64 syscalls are traced properly. |
| 4 | |
| 5 | . "${srcdir=.}/init.sh" |
| 6 | |
Dmitry V. Levin | 226bf1c | 2015-03-18 19:14:02 +0000 | [diff] [blame^] | 7 | check_prog gawk |
| 8 | AWKPATH="$srcdir" gawk -f "$srcdir"/getdents.awk "$srcdir"/getdents.out || |
| 9 | framework_skip_ 'gawk does not work properly' |
Dmitry V. Levin | 7e79a8b | 2015-02-23 21:42:16 +0000 | [diff] [blame] | 10 | |
Dmitry V. Levin | 68d6424 | 2014-09-10 00:07:32 +0000 | [diff] [blame] | 11 | check_prog ls |
| 12 | check_prog mkdir |
Dmitry V. Levin | c929771 | 2015-01-25 00:04:20 +0000 | [diff] [blame] | 13 | check_prog rm |
| 14 | check_prog seq |
| 15 | check_prog touch |
Dmitry V. Levin | 68d6424 | 2014-09-10 00:07:32 +0000 | [diff] [blame] | 16 | |
Dmitry V. Levin | c929771 | 2015-01-25 00:04:20 +0000 | [diff] [blame] | 17 | dir="$LOG.dir" |
Dmitry V. Levin | 8f54664 | 2015-03-17 17:07:57 +0000 | [diff] [blame] | 18 | rm -rf -- "$dir" |
Dmitry V. Levin | c929771 | 2015-01-25 00:04:20 +0000 | [diff] [blame] | 19 | mkdir -- "$dir" || |
| 20 | framework_skip_ 'failed to create a directory' |
Dmitry V. Levin | 68d6424 | 2014-09-10 00:07:32 +0000 | [diff] [blame] | 21 | |
Dmitry V. Levin | c929771 | 2015-01-25 00:04:20 +0000 | [diff] [blame] | 22 | touch -- "$dir/$(for i in $(seq 1 127); do echo A; done; echo Z)" || |
| 23 | framework_skip_ 'failed to create a file' |
| 24 | |
Dmitry V. Levin | 8f54664 | 2015-03-17 17:07:57 +0000 | [diff] [blame] | 25 | ls -- "$dir" > /dev/null || |
Dmitry V. Levin | c929771 | 2015-01-25 00:04:20 +0000 | [diff] [blame] | 26 | framework_skip_ 'failed to list a directory' |
Dmitry V. Levin | 68d6424 | 2014-09-10 00:07:32 +0000 | [diff] [blame] | 27 | |
Dmitry V. Levin | 8f54664 | 2015-03-17 17:07:57 +0000 | [diff] [blame] | 28 | run_strace -vegetdents,getdents64 ls -- "$dir" > /dev/null |
| 29 | match_awk |
| 30 | |
Dmitry V. Levin | c929771 | 2015-01-25 00:04:20 +0000 | [diff] [blame] | 31 | rm -rf -- "$dir" |
Dmitry V. Levin | 68d6424 | 2014-09-10 00:07:32 +0000 | [diff] [blame] | 32 | |
| 33 | exit 0 |