]> granicus.if.org Git - strace/log
strace
8 years agoDefine old_mmap parser only on architectures that use it
Dmitry V. Levin [Fri, 22 Apr 2016 23:36:26 +0000 (23:36 +0000)]
Define old_mmap parser only on architectures that use it

* mem.c (SYS_FUNC(old_mmap)): Define only on AARCH64, ARM, I386, X86_64,
X32, M68K, S390, and S390X.

8 years agotests: extend test coverage of mmap syscall
Dmitry V. Levin [Fri, 22 Apr 2016 20:37:19 +0000 (20:37 +0000)]
tests: extend test coverage of mmap syscall

Check decoding of "old mmap" edition of mmap syscall
on those architectures that define it.

* tests/old_mmap.c: New file.
* tests/old_mmap.test: New test.
* tests/.gitignore: Add old_mmap.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add old_mmap.test.

8 years agotests: extend test coverage of mincore syscall
Dmitry V. Levin [Fri, 22 Apr 2016 14:14:39 +0000 (14:14 +0000)]
tests: extend test coverage of mincore syscall

* tests/mincore.c (print_mincore): New function.
(test_mincore): Use it.  Check mincore with invalid vec address.
Check mincore with length argument not a multiple of the page size.
(main): Check with DEFAULT_STRLEN pages.

8 years agoMove parsers of sync_file_range and sync_file_range2 syscalls to libstrace
Dmitry V. Levin [Fri, 22 Apr 2016 04:17:06 +0000 (04:17 +0000)]
Move parsers of sync_file_range and sync_file_range2 syscalls to libstrace

For each given architecture only one of these two syscalls has a
syscallent entry.  When each parser is placed into a separate file,
moving to libstrace ensures that only one of them that is need
is linked into strace executable.

* sync_file_range.c (SYS_FUNC(sync_file_range2)): Move ...
* sync_file_range2.c: ... here.
* Makefile.am (strace_SOURCES): Move sync_file_range.c ...
(libstrace_a_SOURCES): ... here.  Add sync_file_range2.c.
(strace_SOURCES_c): Add filtered libstrace_a_SOURCES.

8 years agotests: check decoding of clock_adjtime syscall
Dmitry V. Levin [Fri, 22 Apr 2016 01:13:27 +0000 (01:13 +0000)]
tests: check decoding of clock_adjtime syscall

* tests/clock_adjtime.c: New file.
* tests/clock_adjtime.test: New test.
* tests/.gitignore: Add clock_adjtime.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add clock_adjtime.test.

8 years agotests: do not include <assert.h> unnecessarily
Dmitry V. Levin [Thu, 21 Apr 2016 18:20:47 +0000 (18:20 +0000)]
tests: do not include <assert.h> unnecessarily

Automatically change tests/*.c files using the following script:

for f in tests/*.c; do
grep -q '\<assert(' "$f" ||
sed -i '/# *include *<assert\.h>/d' "$f"
done

8 years agotests: do not include <errno.h> unnecessarily
Dmitry V. Levin [Thu, 21 Apr 2016 18:20:47 +0000 (18:20 +0000)]
tests: do not include <errno.h> unnecessarily

Automatically change tests/*.c files using the following script:

for f in tests/*.c; do
grep -Fv errno.h "$f" |
grep -Ewq '(si_)?errno|SOCK_FILTER_DENY_SYSCALL' ||
sed -i '/# *include *<errno\.h>/d' "$f"
done

8 years agotests/xetpriority.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 21:34:19 +0000 (21:34 +0000)]
tests/xetpriority.c: print syscall() result using %ld format

8 years agotests/xetpgid.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 21:33:43 +0000 (21:33 +0000)]
tests/xetpgid.c: print syscall() result using %ld format

8 years agotests/xchownx.c: use errno2name
Dmitry V. Levin [Thu, 21 Apr 2016 21:33:24 +0000 (21:33 +0000)]
tests/xchownx.c: use errno2name

8 years agotests/userfaultfd.c: stop using assert
Dmitry V. Levin [Thu, 21 Apr 2016 21:32:52 +0000 (21:32 +0000)]
tests/userfaultfd.c: stop using assert

8 years agotests/unlinkat.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 21:32:28 +0000 (21:32 +0000)]
tests/unlinkat.c: print syscall() result using %ld format

8 years agotests/umount.c: use errno2name
Dmitry V. Levin [Thu, 21 Apr 2016 21:32:00 +0000 (21:32 +0000)]
tests/umount.c: use errno2name

8 years agotests/truncate64.c: cleanup
Dmitry V. Levin [Thu, 21 Apr 2016 21:28:30 +0000 (21:28 +0000)]
tests/truncate64.c: cleanup

* tests/truncate64.c (main): Use errno2name, stop using assert.

8 years agotests/truncate.c: cleanup
Dmitry V. Levin [Thu, 21 Apr 2016 21:28:03 +0000 (21:28 +0000)]
tests/truncate.c: cleanup

* tests/truncate.c (main): Use errno2name, stop using assert.

8 years agotests/tee.c: stop using assert
Dmitry V. Levin [Thu, 21 Apr 2016 21:27:19 +0000 (21:27 +0000)]
tests/tee.c: stop using assert

8 years agotests/syslog.c: use errno2name
Dmitry V. Levin [Thu, 21 Apr 2016 21:26:52 +0000 (21:26 +0000)]
tests/syslog.c: use errno2name

8 years agotests/sync_file_range2.c: stop using assert
Dmitry V. Levin [Thu, 21 Apr 2016 21:26:16 +0000 (21:26 +0000)]
tests/sync_file_range2.c: stop using assert

8 years agotests/sync_file_range.c: stop using assert
Dmitry V. Levin [Thu, 21 Apr 2016 21:25:55 +0000 (21:25 +0000)]
tests/sync_file_range.c: stop using assert

8 years agotests/symlinkat.c: cleanup
Dmitry V. Levin [Thu, 21 Apr 2016 21:25:29 +0000 (21:25 +0000)]
tests/symlinkat.c: cleanup

8 years agotests/swap.c: cleanup
Dmitry V. Levin [Thu, 21 Apr 2016 21:24:43 +0000 (21:24 +0000)]
tests/swap.c: cleanup

* tests/swap.c (error_msg): Remove.
(main): Use errno2name.

8 years agotests/splice.c: stop using assert
Dmitry V. Levin [Thu, 21 Apr 2016 21:24:01 +0000 (21:24 +0000)]
tests/splice.c: stop using assert

8 years agotests/setugid.c: cleanup
Dmitry V. Levin [Thu, 21 Apr 2016 21:23:34 +0000 (21:23 +0000)]
tests/setugid.c: cleanup

8 years agotests/sethostname.c: use errno2name
Dmitry V. Levin [Thu, 21 Apr 2016 21:22:50 +0000 (21:22 +0000)]
tests/sethostname.c: use errno2name

8 years agotests/setgroups.c: use errno2name
Dmitry V. Levin [Thu, 21 Apr 2016 21:21:37 +0000 (21:21 +0000)]
tests/setgroups.c: use errno2name

* tests/setgroups.c (errno2str): Remove.
(main): Use errno2name.

8 years agotests/seccomp-strict.c: cleanup
Dmitry V. Levin [Thu, 21 Apr 2016 21:20:31 +0000 (21:20 +0000)]
tests/seccomp-strict.c: cleanup

* tests/seccomp-strict.c (main): Use errno2name, stop using assert.

8 years agotests/seccomp-filter.c: cleanup
Dmitry V. Levin [Thu, 21 Apr 2016 21:19:30 +0000 (21:19 +0000)]
tests/seccomp-filter.c: cleanup

* tests/seccomp-filter.c (main): Use errno2name, stop using assert.

8 years agotests/sched_xetscheduler.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 21:18:14 +0000 (21:18 +0000)]
tests/sched_xetscheduler.c: print syscall() result using %ld format

8 years agotests/sched_xetparam.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 21:17:46 +0000 (21:17 +0000)]
tests/sched_xetparam.c: print syscall() result using %ld format

8 years agotests/renameat.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 21:17:11 +0000 (21:17 +0000)]
tests/renameat.c: print syscall() result using %ld format

8 years agotests/rename.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 21:16:54 +0000 (21:16 +0000)]
tests/rename.c: print syscall() result using %ld format

8 years agotests/readv.c: cleanup
Dmitry V. Levin [Thu, 21 Apr 2016 21:16:34 +0000 (21:16 +0000)]
tests/readv.c: cleanup

8 years agotests/pwritev.c: use errno2name
Dmitry V. Levin [Thu, 21 Apr 2016 21:16:02 +0000 (21:16 +0000)]
tests/pwritev.c: use errno2name

8 years agotests/preadv-pwritev.c: cleanup
Dmitry V. Levin [Thu, 21 Apr 2016 21:14:52 +0000 (21:14 +0000)]
tests/preadv-pwritev.c: cleanup

8 years agotests/prctl-seccomp-strict.c: cleanup
Dmitry V. Levin [Thu, 21 Apr 2016 21:13:20 +0000 (21:13 +0000)]
tests/prctl-seccomp-strict.c: cleanup

* tests/prctl-seccomp-strict.c (main): Use errno2name,
stop using assert.

8 years agotests/openat.c: use errno2name
Dmitry V. Levin [Thu, 21 Apr 2016 21:12:41 +0000 (21:12 +0000)]
tests/openat.c: use errno2name

8 years agotests/open.c: use errno2name
Dmitry V. Levin [Thu, 21 Apr 2016 21:12:14 +0000 (21:12 +0000)]
tests/open.c: use errno2name

8 years agotests/mlockall.c: cleanup
Dmitry V. Levin [Thu, 21 Apr 2016 21:06:13 +0000 (21:06 +0000)]
tests/mlockall.c: cleanup

8 years agotests/mlock2.c: stop using assert
Dmitry V. Levin [Thu, 21 Apr 2016 21:05:39 +0000 (21:05 +0000)]
tests/mlock2.c: stop using assert

8 years agotests/mknod.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 21:04:00 +0000 (21:04 +0000)]
tests/mknod.c: print syscall() result using %ld format

8 years agotests/mkdirat.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 21:03:13 +0000 (21:03 +0000)]
tests/mkdirat.c: print syscall() result using %ld format

8 years agotests/lseek.c: cleanup
Dmitry V. Levin [Thu, 21 Apr 2016 21:01:40 +0000 (21:01 +0000)]
tests/lseek.c: cleanup

* tests/lseek.c (main): Use errno2name, stop using assert.

8 years agotests/llseek.c: cleanup
Dmitry V. Levin [Thu, 21 Apr 2016 21:00:47 +0000 (21:00 +0000)]
tests/llseek.c: cleanup

* tests/llseek.c (main): Use errno2name, stop using assert.

8 years agotests/linkat.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 21:00:18 +0000 (21:00 +0000)]
tests/linkat.c: print syscall() result using %ld format

8 years agotests/iopl.c: use errno2name
Dmitry V. Levin [Thu, 21 Apr 2016 20:59:46 +0000 (20:59 +0000)]
tests/iopl.c: use errno2name

8 years agotests/ioperm.c: use errno2name
Dmitry V. Levin [Thu, 21 Apr 2016 20:59:26 +0000 (20:59 +0000)]
tests/ioperm.c: use errno2name

8 years agotests/getgroups.c: use errno2name
Dmitry V. Levin [Thu, 21 Apr 2016 20:51:15 +0000 (20:51 +0000)]
tests/getgroups.c: use errno2name

* tests/getgroups.c (errno2str): Remove.
(main): Use errno2name.

8 years agotests/ftruncate64.c: cleanup
Dmitry V. Levin [Thu, 21 Apr 2016 20:50:08 +0000 (20:50 +0000)]
tests/ftruncate64.c: cleanup

* tests/ftruncate64.c (main): Use errno2name, stop using assert.

8 years agotests/ftruncate.c: cleanup
Dmitry V. Levin [Thu, 21 Apr 2016 20:48:23 +0000 (20:48 +0000)]
tests/ftruncate.c: cleanup

* tests/ftruncate.c (main): Use errno2name, stop using assert.

8 years agotests/fsync.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 20:46:44 +0000 (20:46 +0000)]
tests/fsync.c: print syscall() result using %ld format

8 years agotests/flock.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 20:46:15 +0000 (20:46 +0000)]
tests/flock.c: print syscall() result using %ld format

8 years agotests/file_handle.c: use errno2name
Dmitry V. Levin [Thu, 21 Apr 2016 20:45:17 +0000 (20:45 +0000)]
tests/file_handle.c: use errno2name

8 years agotests/fdatasync.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 20:41:38 +0000 (20:41 +0000)]
tests/fdatasync.c: print syscall() result using %ld format

8 years agotests/fchownat.c: use errno2name
Dmitry V. Levin [Thu, 21 Apr 2016 20:40:49 +0000 (20:40 +0000)]
tests/fchownat.c: use errno2name

8 years agotests/fchmodat.c: use errno2name
Dmitry V. Levin [Thu, 21 Apr 2016 20:39:58 +0000 (20:39 +0000)]
tests/fchmodat.c: use errno2name

8 years agotests/fchmod.c: use errno2name
Dmitry V. Levin [Thu, 21 Apr 2016 20:39:40 +0000 (20:39 +0000)]
tests/fchmod.c: use errno2name

8 years agotests/faccessat.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 20:38:47 +0000 (20:38 +0000)]
tests/faccessat.c: print syscall() result using %ld format

8 years agotests/epoll_wait.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 20:38:15 +0000 (20:38 +0000)]
tests/epoll_wait.c: print syscall() result using %ld format

8 years agotests/epoll_ctl.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 20:37:50 +0000 (20:37 +0000)]
tests/epoll_ctl.c: print syscall() result using %ld format

8 years agotests/epoll_create1.c: cleanup
Dmitry V. Levin [Thu, 21 Apr 2016 20:36:45 +0000 (20:36 +0000)]
tests/epoll_create1.c: cleanup

* tests/epoll_create1.c (main): Use errno2name, stop using assert.

8 years agotests/epoll_create.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 20:35:20 +0000 (20:35 +0000)]
tests/epoll_create.c: print syscall() result using %ld format

8 years agotests/dup3.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 20:34:56 +0000 (20:34 +0000)]
tests/dup3.c: print syscall() result using %ld format

8 years agotests/dup2.c: print syscall() result using %ld format
Dmitry V. Levin [Thu, 21 Apr 2016 20:34:36 +0000 (20:34 +0000)]
tests/dup2.c: print syscall() result using %ld format

8 years agotests/dup.c: cleanup
Dmitry V. Levin [Thu, 21 Apr 2016 20:33:32 +0000 (20:33 +0000)]
tests/dup.c: cleanup

8 years agotests/creat.c: stop using sys/stat.h
Dmitry V. Levin [Thu, 21 Apr 2016 20:32:43 +0000 (20:32 +0000)]
tests/creat.c: stop using sys/stat.h

8 years agotests/copy_file_range.c: stop using assert
Dmitry V. Levin [Thu, 21 Apr 2016 20:31:32 +0000 (20:31 +0000)]
tests/copy_file_range.c: stop using assert

8 years agotests/chroot.c: use errno2name
Dmitry V. Levin [Thu, 21 Apr 2016 20:30:25 +0000 (20:30 +0000)]
tests/chroot.c: use errno2name

8 years agotests/aio.c: use errno2name
Dmitry V. Levin [Thu, 21 Apr 2016 20:29:29 +0000 (20:29 +0000)]
tests/aio.c: use errno2name

8 years agotests: cleanup acct.test
Dmitry V. Levin [Thu, 21 Apr 2016 20:16:32 +0000 (20:16 +0000)]
tests: cleanup acct.test

* tests/acct.c (main): Use errno2name, stop using assert,
change sample file name.
* tests/acct.test: Update.

8 years agotests: use errno2name()
Dmitry V. Levin [Thu, 21 Apr 2016 17:49:32 +0000 (17:49 +0000)]
tests: use errno2name()

Automatically change tests/*.c files using the following sed regexp:
sed -i 's/errno == E[[:alnum:]]\+ ? "E[[:alnum:]]\+" : "E[[:alnum:]]\+"/errno2name()/g'

8 years agotests/dup.c: include "tests.h"
Dmitry V. Levin [Thu, 21 Apr 2016 18:16:10 +0000 (18:16 +0000)]
tests/dup.c: include "tests.h"

This is going to be necessary for the following commit.

8 years agotests: add getpgrp.test
Fei Jie [Thu, 21 Apr 2016 07:53:52 +0000 (15:53 +0800)]
tests: add getpgrp.test

* tests/getpgrp.c: New file.
* tests/getpgrp.test: New test.
* tests/.gitignore: Add getpgrp.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add getpgrp.test.

8 years agotests: add access.test
Fei Jie [Thu, 21 Apr 2016 07:53:51 +0000 (15:53 +0800)]
tests: add access.test

* tests/access.c: New file.
* tests/access.test: New test.
* tests/.gitignore: Add access.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add access.test.

8 years agotests: add fchdir.test
Fei Jie [Thu, 21 Apr 2016 07:53:50 +0000 (15:53 +0800)]
tests: add fchdir.test

* tests/fchdir.c: New file.
* tests/fchdir.test: New test.
* tests/.gitignore: Add fchdir.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add fchdir.test.

8 years agotests: add mkdir.test
Fei Jie [Thu, 21 Apr 2016 07:53:49 +0000 (15:53 +0800)]
tests: add mkdir.test

* tests/mkdir.c: New file.
* tests/mkdir.test: New test.
* tests/.gitignore: Add mkdir.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add mkdir.test.

8 years agotests: add getsid.test
Fei Jie [Thu, 21 Apr 2016 01:40:01 +0000 (09:40 +0800)]
tests: add getsid.test

* tests/getsid.c: New file.
* tests/getsid.test: New test.
* tests/.gitignore: Add getsid.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add getsid.test.

8 years agotests: add errno2name function to libtests
Dmitry V. Levin [Wed, 20 Apr 2016 22:51:28 +0000 (22:51 +0000)]
tests: add errno2name function to libtests

Add a simple translator of errno to its name, so one could
simply use errno2name() instead of complex expressions like
errno == EINVAL ? "EINVAL" : "EFAULT".

* tests.h (errno2name): New prototype.
* errno2name.c: New file.
* Makefile.am (libtests_a_SOURCES): Add it.

8 years agohppa: rename ECANCELLED to ECANCELED
Dmitry V. Levin [Wed, 20 Apr 2016 18:04:34 +0000 (18:04 +0000)]
hppa: rename ECANCELLED to ECANCELED

hppa seems to be the only architecture that defines ECANCELLED synonym
for ECANCELED constant, other architectures just define ECANCELED.
Change the way how this constant is printed on hppa to be in line
with other architectures.

* linux/hppa/errnoent.h [253]: Rename ECANCELLED to ECANCELED.

8 years agoRemove parser of unimplemented timerfd syscall
Dmitry V. Levin [Wed, 20 Apr 2016 17:15:05 +0000 (17:15 +0000)]
Remove parser of unimplemented timerfd syscall

timerfd syscall was introduced in v2.6.22-rc1, but in v2.6.25-rc1
it was replaced by timerfd_* syscall family.

* linux/avr32/syscallent.h (timerfd): Fix nargs.
* linux/dummy.h (sys_timerfd): Add stub alias.
* time.c (SYS_FUNC(timerfd)): Remove.

8 years agotests: workaround kernel bugs in seccomp-strict.test and prctl-seccomp-strict.test
Dmitry V. Levin [Wed, 20 Apr 2016 14:30:43 +0000 (14:30 +0000)]
tests: workaround kernel bugs in seccomp-strict.test and prctl-seccomp-strict.test

If kernel implementation of strict seccomp mode is buggy, test programs
will be killed by SIGKILL.  This is a known problem at least on
x32 and mips.  Skip affected tests if this is the case.

This change partially revert commit 9c1a72cd3f3d52d573876ce474b620a5f141fb1b.

* tests/seccomp-strict.c (main): Remove workaround for x32.
* tests/prctl-seccomp-strict.c: Likewise.
* tests/seccomp-strict.test: Skip the test if the test program
has been killed by SIGKILL.
* tests/prctl-seccomp-strict.test: Likewise.

8 years agotests/shmxt.c: do not use SHM_RND, it is unreliable
Dmitry V. Levin [Wed, 20 Apr 2016 05:40:58 +0000 (05:40 +0000)]
tests/shmxt.c: do not use SHM_RND, it is unreliable

* tests/shmxt.c (main): Do not set SHM_RND flag.

8 years agotests/rt_sigpending.c: fix for systems where _NSIG > 16 * sizeof(long)
Dmitry V. Levin [Wed, 20 Apr 2016 04:32:04 +0000 (04:32 +0000)]
tests/rt_sigpending.c: fix for systems where _NSIG > 16 * sizeof(long)

* tests/rt_sigsuspend.c (iterate): Do not assume that size will be less
than sizeof(long) on the second iteration.

8 years agoprctl-seccomp-strict.test: robustify against unrelated prctl invocations
Dmitry V. Levin [Wed, 20 Apr 2016 00:26:46 +0000 (00:26 +0000)]
prctl-seccomp-strict.test: robustify against unrelated prctl invocations

* tests/prctl-seccomp-strict.test: Filter out PR_GET_* prctl calls.

8 years agotests: adjust rt_sigpending to older kernels
Dmitry V. Levin [Tue, 19 Apr 2016 22:16:30 +0000 (22:16 +0000)]
tests: adjust rt_sigpending to older kernels

With linux kernels older than v3.9-rc1, compat rt_sigpending syscall
could fail with EFAULT in cases where on later kernels it succeeds.
Adjust the test to handle both cases properly.

* tests/rt_sigpending.c (iterate): Stop iterations if rt_sigpending
failed with EFAULT.

8 years agotests: adjust readv/writev and preadv/pwritev tests to older kernels
Dmitry V. Levin [Tue, 19 Apr 2016 21:10:44 +0000 (21:10 +0000)]
tests: adjust readv/writev and preadv/pwritev tests to older kernels

With linux kernels older than v3.16-rc1, iovec based compat syscalls may
return EINVAL in some cases where on later kernels they return EFAULT.
Adjust tests to handle both cases properly.

* tests/preadv-pwritev.c: Include <errno.h>.
(main): Print either "EINVAL" or "EFAULT" depending on errno.
* tests/pwritev.c: Likewise.
* tests/readv.c: Likewise.

8 years agotests: remove obsolete non-strict uid tests
Dmitry V. Levin [Tue, 19 Apr 2016 18:45:25 +0000 (18:45 +0000)]
tests: remove obsolete non-strict uid tests

Recently added strict tests for uid/gid related syscalls
made old uid tests obsolete.

* tests/uid.awk: Remove.
* tests/uid.c: Remove.
* tests/uid.test: Remove.
* tests/uid16.c: Remove.
* tests/uid16.test: Remove.
* tests/uid32.c: Remove.
* tests/uid32.test: Remove.
* tests/.gitignore: Remove uid, uid16, and uid32.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Remove uid.test, uid16.test, and uid32.test.
(EXTRA_DIST): Remove uid.awk.

8 years agotests: extend test coverage of getuid/getgid family syscalls
Dmitry V. Levin [Tue, 19 Apr 2016 18:28:03 +0000 (18:28 +0000)]
tests: extend test coverage of getuid/getgid family syscalls

Add strict tests for getuid, getuid32, getgid, getgid32, geteuid,
geteuid32, getegid, and getegid32 syscalls.

* tests/getegid.c: New file.
* tests/getegid.test: New test.
* tests/getegid32.c: New file.
* tests/getegid32.test: New test.
* tests/geteuid.c: New file.
* tests/geteuid.test: New test.
* tests/geteuid32.c: New file.
* tests/geteuid32.test: New test.
* tests/getgid.c: New file.
* tests/getgid.test: New test.
* tests/getgid32.c: New file.
* tests/getgid32.test: New test.
* tests/getuid.c: New file.
* tests/getuid.test: New test.
* tests/getuid32.c: New file.
* tests/getuid32.test: New test.
* tests/.gitignore: Add getuid, getuid32, getgid, getgid32, geteuid,
* geteuid32, getegid, and getegid32.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add getegid.test, getegid32.test, geteuid.test,
geteuid32.test, getgid.test, getgid32.test, getuid.test,
and getuid32.test.

8 years agotests: extend test coverage of getresgid32 syscall
Dmitry V. Levin [Tue, 19 Apr 2016 17:45:26 +0000 (17:45 +0000)]
tests: extend test coverage of getresgid32 syscall

* tests/getresgid32.c: New file.
* tests/getresgid32.test: New test.
* tests/.gitignore: Add getresgid32.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add getresgid32.test.

8 years agotests: extend test coverage of getresgid syscall
Dmitry V. Levin [Tue, 19 Apr 2016 17:42:51 +0000 (17:42 +0000)]
tests: extend test coverage of getresgid syscall

* tests/getresgid.c: New file.
* tests/getresgid.test: New test.
* tests/.gitignore: Add getresgid.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add getresgid.test.

8 years agotests: extend test coverage of getresuid32 syscall
Dmitry V. Levin [Tue, 19 Apr 2016 17:34:00 +0000 (17:34 +0000)]
tests: extend test coverage of getresuid32 syscall

* tests/getresuid32.c: New file.
* tests/getresuid32.test: New test.
* tests/.gitignore: Add getresuid32.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add getresuid32.test.

8 years agotests: extend test coverage of getresuid syscall
Dmitry V. Levin [Tue, 19 Apr 2016 17:30:23 +0000 (17:30 +0000)]
tests: extend test coverage of getresuid syscall

* tests/getresugid.c: New file.
* tests/getresuid.c: New file.
* tests/getresuid.test: New test.
* tests/.gitignore: Add getresuid.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add getresuid.test.
(EXTRA_DIST): Add getresugid.c.

8 years agotests: add symlinkat.test
Fei Jie [Tue, 19 Apr 2016 07:38:34 +0000 (15:38 +0800)]
tests: add symlinkat.test

* tests/symlinkat.c: New file.
* tests/symlinkat.test: New test.
* tests/.gitignore: Add symlinkat.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add symlinkat.test.

8 years agotests: add iopl.test
Fei Jie [Tue, 19 Apr 2016 07:38:33 +0000 (15:38 +0800)]
tests: add iopl.test

* tests/iopl.c: New file.
* tests/iopl.test: New test.
* tests/.gitignore: Add iopl.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add iopl.test.

8 years agomips o32, powerpc, powerpc64: fix decoding of iopl syscall
Dmitry V. Levin [Wed, 20 Apr 2016 00:46:50 +0000 (00:46 +0000)]
mips o32, powerpc, powerpc64: fix decoding of iopl syscall

* linux/mips/syscallent-o32.h (iopl): Fix nargs.
* linux/powerpc/syscallent.h (iopl): Fix nargs and sys_func.
* linux/powerpc64/syscallent.h (iopl): Likewise.

8 years agotests: add ioperm.test
Fei Jie [Tue, 19 Apr 2016 07:38:32 +0000 (15:38 +0800)]
tests: add ioperm.test

* tests/ioperm.c: New file.
* tests/ioperm.test: New test.
* tests/.gitignore: Add ioperm.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add ioperm.test.

8 years agoFix corner cases of getgroups and setgroups syscall decoders
Dmitry V. Levin [Tue, 19 Apr 2016 01:59:52 +0000 (01:59 +0000)]
Fix corner cases of getgroups and setgroups syscall decoders

* uid.c (print_groups): New function.
(SYS_FUNC(setgroups), SYS_FUNC(getgroups)): Use it.
Print first syscall argument using %u format.
* tests/getgroups.c: New file.
* tests/getgroups.test: New test.
* tests/getgroups32.c: New file.
* tests/getgroups32.test: New test.
* tests/setgroups.c: New file.
* tests/setgroups.test: New test.
* tests/setgroups32.c: New file.
* tests/setgroups32.test: New test.
* tests/.gitignore: Add getgroups, getgroups32, setgroups,
and setgroups32.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add getgroups.test, getgroups32.test,
setgroups.test, and setgroups32.test.

8 years agoCleanup setfsuid syscall decoder
Dmitry V. Levin [Mon, 18 Apr 2016 16:24:48 +0000 (16:24 +0000)]
Cleanup setfsuid syscall decoder

* uid.c (SYS_FUNC(setfsuid)): Remove redundant check.

8 years agotests: check decoding of setfsgid32 syscall
Dmitry V. Levin [Mon, 18 Apr 2016 16:10:07 +0000 (16:10 +0000)]
tests: check decoding of setfsgid32 syscall

* tests/setfsgid32.c: New file.
* tests/setfsgid32.test: New test.
* tests/.gitignore: Add setfsgid32.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add setfsgid32.test.

8 years agotests: check decoding of setfsgid syscall
Dmitry V. Levin [Mon, 18 Apr 2016 16:08:38 +0000 (16:08 +0000)]
tests: check decoding of setfsgid syscall

* tests/setfsugid.c: New file.
* tests/setfsgid.c: New file.
* tests/setfsgid.test: New test.
* tests/.gitignore: Add setfsgid.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add setfsgid.test.
(EXTRA_DIST): Add setfsugid.c.

8 years agotests: check decoding of setfsuid32 syscall
Dmitry V. Levin [Mon, 18 Apr 2016 16:03:51 +0000 (16:03 +0000)]
tests: check decoding of setfsuid32 syscall

* tests/setfsuid32.c: New file.
* tests/setfsuid32.test: New test.
* tests/.gitignore: Add setfsuid32.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add setfsuid32.test.