summaryrefslogtreecommitdiff
path: root/contrib/netbsd-tests
diff options
context:
space:
mode:
authorKyle Evans <kevans@FreeBSD.org>2020-02-07 22:36:37 +0000
committerKyle Evans <kevans@FreeBSD.org>2020-02-07 22:36:37 +0000
commit14d3b069199d6a780cb83f55dfff11ed1ccea69d (patch)
tree5a985bb7facbf28c42ff169c1511b60088ec788f /contrib/netbsd-tests
parent53071ed1c96db7f89defc99c95b0ad1031d48f45 (diff)
downloadsrc-test2-14d3b069199d6a780cb83f55dfff11ed1ccea69d.tar.gz
src-test2-14d3b069199d6a780cb83f55dfff11ed1ccea69d.zip
Notes
Diffstat (limited to 'contrib/netbsd-tests')
-rw-r--r--contrib/netbsd-tests/lib/libc/c063/t_o_search.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/contrib/netbsd-tests/lib/libc/c063/t_o_search.c b/contrib/netbsd-tests/lib/libc/c063/t_o_search.c
index 714305e2a0ad..414a078011d9 100644
--- a/contrib/netbsd-tests/lib/libc/c063/t_o_search.c
+++ b/contrib/netbsd-tests/lib/libc/c063/t_o_search.c
@@ -34,6 +34,11 @@ __RCSID("$NetBSD: t_o_search.c,v 1.9 2020/02/06 12:18:06 martin Exp $");
#include <atf-c.h>
#include <sys/types.h>
+#ifdef __FreeBSD__
+#include <sys/mount.h>
+#else
+#include <sys/statvfs.h>
+#endif
#include <sys/stat.h>
#include <dirent.h>
@@ -322,6 +327,23 @@ ATF_TC_BODY(o_search_revokex, tc)
/* Drop permissions. The kernel must still not check the exec bit. */
ATF_REQUIRE(chmod(DIR, 0000) == 0);
+ {
+ const char *fstypename;
+#ifdef __FreeBSD__
+ struct statfs st;
+
+ fstatfs(dfd, &st);
+ fstypename = st.f_fstypename;
+#else
+ struct statvfs vst;
+
+ fstatvfs(dfd, &vst);
+ fstypename = vst.f_fstypename;
+#endif
+ if (strcmp(fstypename, "nfs") == 0)
+ atf_tc_expect_fail(
+ "NFS protocol cannot observe O_SEARCH semantics");
+ }
ATF_REQUIRE(fstatat(dfd, BASEFILE, &sb, 0) == 0);
ATF_REQUIRE(close(dfd) == 0);