[PATCH v2 2/2] tests: test for correct ellipsis with -s in xattr
Gabriel Laskar
gabriel at lse.epita.fr
Thu Dec 22 15:10:52 UTC 2016
* tests/xattr-strings.c: New file.
* tests/xattr-strings.test: New test.
* tests/.gitignore: Add xattr-string.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add xattr-string.test.
Signed-off-by: Gabriel Laskar <gabriel at lse.epita.fr>
---
tests/.gitignore | 1 +
tests/Makefile.am | 2 ++
tests/xattr-strings.c | 31 +++++++++++++++++++++++++++++++
tests/xattr-strings.test | 7 +++++++
4 files changed, 41 insertions(+)
create mode 100644 tests/xattr-strings.c
create mode 100755 tests/xattr-strings.test
diff --git a/tests/.gitignore b/tests/.gitignore
index 7dee9fd9..3b04590a 100644
--- a/tests/.gitignore
+++ b/tests/.gitignore
@@ -358,6 +358,7 @@ waitid
waitid-v
waitpid
xattr
+xattr-strings
xet_robust_list
xetitimer
xetpgid
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 1c32b1c6..7a8b411c 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -418,6 +418,7 @@ check_PROGRAMS = \
waitid-v \
waitpid \
xattr \
+ xattr-strings \
xet_robust_list \
xetitimer \
xetpgid \
@@ -793,6 +794,7 @@ DECODER_TESTS = \
waitid-v.test \
waitpid.test \
xattr.test \
+ xattr-strings.test \
xet_robust_list.test \
xetitimer.test \
xetpgid.test \
diff --git a/tests/xattr-strings.c b/tests/xattr-strings.c
new file mode 100644
index 00000000..282bb77e
--- /dev/null
+++ b/tests/xattr-strings.c
@@ -0,0 +1,31 @@
+#include "tests.h"
+
+#ifdef HAVE_SYS_XATTR_H
+
+# include <stdio.h>
+# include <sys/xattr.h>
+
+int
+main(void)
+{
+ static const char name[] = "strace.test";
+ static const char c_value[] = "foobar";
+
+ const char *const z_value = tail_memdup(c_value, sizeof(c_value));
+ long rc;
+
+ rc = fsetxattr(-1, name, z_value, sizeof(c_value), XATTR_REPLACE);
+ printf("fsetxattr(-1, \"%.*s\"..., \"%.*s\"..., %u, XATTR_REPLACE) = %s\n",
+ 4, name, 4, c_value, (unsigned) sizeof(c_value), sprintrc(rc));
+
+
+ puts("+++ exited with 0 +++");
+ return 0;
+}
+
+#else
+
+SKIP_MAIN_UNDEFINED("HAVE_SYS_XATTR_H")
+
+#endif
+
diff --git a/tests/xattr-strings.test b/tests/xattr-strings.test
new file mode 100755
index 00000000..25ef360b
--- /dev/null
+++ b/tests/xattr-strings.test
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+# Check *xattr syscalls decoding when limiting string size.
+
+. "${srcdir=.}/init.sh"
+
+run_strace_match_diff -a22 -s 4 -e trace=fsetxattr
--
2.11.0
More information about the Strace-devel
mailing list