From eb9f12639f892906bd5474dd5757449747ebc152 Mon Sep 17 00:00:00 2001 From: Nikolaus Rath Date: Thu, 10 Nov 2016 13:09:05 -0800 Subject: Don't expect EACCESS errors as root Fixes #111. --- test/test.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) (limited to 'test') diff --git a/test/test.c b/test/test.c index 2b38bb2..281f218 100644 --- a/test/test.c +++ b/test/test.c @@ -1395,6 +1395,7 @@ int main(int argc, char *argv[]) const char *realpath; int err = 0; int a; + int is_root; umask(0); if (argc < 2 || argc > 4) { @@ -1440,6 +1441,8 @@ int main(int argc, char *argv[]) sprintf(testdir2_r, "%s/testdir2", realpath); sprintf(subfile_r, "%s/subfile", testdir2_r); + is_root = (geteuid() == 0); + err += test_create(); err += test_create_unlink(); err += test_mknod(); @@ -1489,15 +1492,17 @@ int main(int argc, char *argv[]) err += test_open_acc(O_WRONLY, 0600, 0); err += test_open_acc(O_RDWR, 0600, 0); err += test_open_acc(O_RDONLY, 0400, 0); - err += test_open_acc(O_RDONLY | O_TRUNC, 0400, EACCES); - err += test_open_acc(O_WRONLY, 0400, EACCES); - err += test_open_acc(O_RDWR, 0400, EACCES); - err += test_open_acc(O_RDONLY, 0200, EACCES); err += test_open_acc(O_WRONLY, 0200, 0); - err += test_open_acc(O_RDWR, 0200, EACCES); - err += test_open_acc(O_RDONLY, 0000, EACCES); - err += test_open_acc(O_WRONLY, 0000, EACCES); - err += test_open_acc(O_RDWR, 0000, EACCES); + if(!is_root) { + err += test_open_acc(O_RDONLY | O_TRUNC, 0400, EACCES); + err += test_open_acc(O_WRONLY, 0400, EACCES); + err += test_open_acc(O_RDWR, 0400, EACCES); + err += test_open_acc(O_RDONLY, 0200, EACCES); + err += test_open_acc(O_RDWR, 0200, EACCES); + err += test_open_acc(O_RDONLY, 0000, EACCES); + err += test_open_acc(O_WRONLY, 0000, EACCES); + err += test_open_acc(O_RDWR, 0000, EACCES); + } err += test_create_ro_dir(O_CREAT); err += test_create_ro_dir(O_CREAT | O_EXCL); err += test_create_ro_dir(O_CREAT | O_WRONLY); -- cgit v1.2.3