summaryrefslogtreecommitdiff
path: root/test/sanitizer_common
diff options
context:
space:
mode:
authorKuba Mracek <mracek@apple.com>2018-02-01 21:59:51 +0000
committerKuba Mracek <mracek@apple.com>2018-02-01 21:59:51 +0000
commit593182721d776dfafbaf93f106f9b232efe8f257 (patch)
tree7041721963ab0140ed22c445ebc4c1f563db1995 /test/sanitizer_common
parentd493d265c37a75cf4995ff97e54d5fd55b8d80ac (diff)
Update readlink.c and readlinkat.c to use larger buffers on Darwin.
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324016 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/sanitizer_common')
-rw-r--r--test/sanitizer_common/TestCases/Posix/readlink.c12
-rw-r--r--test/sanitizer_common/TestCases/Posix/readlinkat.c10
2 files changed, 17 insertions, 5 deletions
diff --git a/test/sanitizer_common/TestCases/Posix/readlink.c b/test/sanitizer_common/TestCases/Posix/readlink.c
index e140720b5..f32cd8000 100644
--- a/test/sanitizer_common/TestCases/Posix/readlink.c
+++ b/test/sanitizer_common/TestCases/Posix/readlink.c
@@ -8,20 +8,26 @@
#include <sys/types.h>
#include <unistd.h>
+#ifdef __APPLE__
+#define LEN PATH_MAX
+#else
+#define LEN NAME_MAX
+#endif
+
int main(int argc, char **argv) {
- char symlink_path[NAME_MAX];
+ char symlink_path[LEN];
snprintf(symlink_path, sizeof(symlink_path), "%s_%d.symlink", argv[0],
getpid());
int res = symlink(argv[0], symlink_path);
assert(!res);
- char readlink_path[NAME_MAX];
+ char readlink_path[LEN];
ssize_t res2 = readlink(symlink_path, readlink_path, sizeof(readlink_path));
assert(res2 >= 0);
readlink_path[res2] = '\0';
assert(!strcmp(readlink_path, argv[0]));
- char readlinkat_path[NAME_MAX];
+ char readlinkat_path[LEN];
res2 = readlinkat(AT_FDCWD, symlink_path, readlinkat_path,
sizeof(readlink_path));
assert(res2 >= 0);
diff --git a/test/sanitizer_common/TestCases/Posix/readlinkat.c b/test/sanitizer_common/TestCases/Posix/readlinkat.c
index e35e71e0b..0ac06ea61 100644
--- a/test/sanitizer_common/TestCases/Posix/readlinkat.c
+++ b/test/sanitizer_common/TestCases/Posix/readlinkat.c
@@ -7,14 +7,20 @@
#include <string.h>
#include <unistd.h>
+#ifdef __APPLE__
+#define LEN PATH_MAX
+#else
+#define LEN NAME_MAX
+#endif
+
int main(int argc, char **argv) {
- char symlink_path[NAME_MAX];
+ char symlink_path[LEN];
snprintf(symlink_path, sizeof(symlink_path), "%s_%d.symlink", argv[0],
getpid());
int res = symlink(argv[0], symlink_path);
assert(!res);
- char readlinkat_path[NAME_MAX];
+ char readlinkat_path[LEN];
int res2 = readlinkat(AT_FDCWD, symlink_path, readlinkat_path,
sizeof(readlinkat_path));
assert(res2 >= 0);