From e6828b1102fec1ee25fc504c9076ac31701a681e Mon Sep 17 00:00:00 2001 From: "Dmitry V. Levin" Date: Sun, 17 Apr 2016 22:24:41 +0000 Subject: [PATCH] tests: check decoding of fchown syscall * tests/fchown.c: New file. * tests/fchown.test: New test. * tests/.gitignore: Add fchown. * tests/Makefile.am (check_PROGRAMS): Likewise. (DECODER_TESTS): Add fchown.test. --- tests/.gitignore | 1 + tests/Makefile.am | 2 ++ tests/fchown.c | 20 ++++++++++++++++++++ tests/fchown.test | 6 ++++++ 4 files changed, 29 insertions(+) create mode 100644 tests/fchown.c create mode 100755 tests/fchown.test diff --git a/tests/.gitignore b/tests/.gitignore index 99411f20..5bb8b590 100644 --- a/tests/.gitignore +++ b/tests/.gitignore @@ -40,6 +40,7 @@ faccessat fanotify_mark fchmod fchmodat +fchown fchownat fcntl fcntl64 diff --git a/tests/Makefile.am b/tests/Makefile.am index 823fc0a5..2e576c36 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -92,6 +92,7 @@ check_PROGRAMS = \ fanotify_mark \ fchmod \ fchmodat \ + fchown \ fchownat \ fcntl \ fcntl64 \ @@ -303,6 +304,7 @@ DECODER_TESTS = \ fanotify_mark.test \ fchmod.test \ fchmodat.test \ + fchown.test \ fchownat.test \ fcntl.test \ fcntl64.test \ diff --git a/tests/fchown.c b/tests/fchown.c new file mode 100644 index 00000000..53a522e9 --- /dev/null +++ b/tests/fchown.c @@ -0,0 +1,20 @@ +#include "tests.h" +#include + +#ifdef __NR_fchown + +# define SYSCALL_NR __NR_fchown +# define SYSCALL_NAME "fchown" +# define ACCESS_BY_DESCRIPTOR + +# if defined __NR_fchown32 && __NR_fchown != __NR_fchown32 +# define UGID_TYPE_IS_SHORT +# endif + +# include "xchownx.c" + +#else + +SKIP_MAIN_UNDEFINED("__NR_fchown") + +#endif diff --git a/tests/fchown.test b/tests/fchown.test new file mode 100755 index 00000000..63a0f2e3 --- /dev/null +++ b/tests/fchown.test @@ -0,0 +1,6 @@ +#!/bin/sh + +# Check fchown syscall decoding. + +. "${srcdir=.}/init.sh" +run_strace_match_diff -a16 -- 2.50.1