]> granicus.if.org Git - strace/commit
clone: implement clone3 syscall decoding
authorEugene Syromyatnikov <evgsyr@gmail.com>
Wed, 28 Aug 2019 00:35:53 +0000 (02:35 +0200)
committerDmitry V. Levin <ldv@altlinux.org>
Mon, 23 Sep 2019 11:58:41 +0000 (11:58 +0000)
commit91fbffc06dd364b528eb564807c99c73a43a88f9
treeca2b9101fa8bfc5177d096a676b57258efbc4a35
parent78191cf9b17d16547eee6f95120a30c3da17e474
clone: implement clone3 syscall decoding

* configure.ac (AC_CHECK_HEADERS): Check for linux/sched.h presence.
(AC_CHECK_TYPES): Check for struct clone_args in <linux/sched.h>.
* clone.c: Include "print_fields.h".
(struct strace_clone_args): New type.
(print_nonzero_bytes): New function.
(SYS_FUNC(clone3)): New decoder.
* linux/syscallent-common.h ([BASE_NR + 435]): Wire up clone3.
* NEWS: Mention this change.
* tests/clone3.c: New file.
* tests/clone3-Xabbrev.c: Likewise.
* tests/clone3-Xraw.c: Likewise.
* tests/clone3-Xverbose.c: Likewise.
* tests/clone3-success.c: Likewise.
* tests/clone3-success-Xabbrev.c: Likewise.
* tests/clone3-success-Xraw.c: Likewise.
* tests/clone3-success-Xverbose.c: Likewise.
* tests/clone3-success.test: New test.
* tests/Makefile.am (check_PROGRAMS): Add clone3-success,
clone3-success-Xabbrev, clone3-success-Xraw, and
clone3-success-Xverbose.
(DECODER_TESTS): Add clone3-success.test.
* tests/gen_tests.in (clone3, clone3-Xabbrev, clone3-Xraw,
clone3-Xverbose, clone3-success-Xabbrev, clone3-success-Xraw,
clone3-success-Xverbose): New entries.
* tests/pure_executables.list: Add clone3, clone3-Xabbrev, clone3-Xraw,
and clone3-Xverbose.
* tests/.gitignore: Add clone3, clone3-Xabbrev, clone3-Xraw,
clone3-Xverbose, clone3-success, clone3-success-Xabbrev,
clone3-success-Xraw, and clone3-success-Xverbose.

Co-Authored-by: Dmitry V. Levin <ldv@altlinux.org>
17 files changed:
NEWS
clone.c
configure.ac
linux/syscallent-common.h
tests/.gitignore
tests/Makefile.am
tests/clone3-Xabbrev.c [new file with mode: 0644]
tests/clone3-Xraw.c [new file with mode: 0644]
tests/clone3-Xverbose.c [new file with mode: 0644]
tests/clone3-success-Xabbrev.c [new file with mode: 0644]
tests/clone3-success-Xraw.c [new file with mode: 0644]
tests/clone3-success-Xverbose.c [new file with mode: 0644]
tests/clone3-success.c [new file with mode: 0644]
tests/clone3-success.test [new file with mode: 0755]
tests/clone3.c [new file with mode: 0644]
tests/gen_tests.in
tests/pure_executables.list