Lines Matching +full:tp +full:- +full:link
3 /*-
37 #include <atf-c.h>
46 static char path[] = "link";
60 (void)strlcat(buf, ".link", sizeof(buf)); in getpath()
68 atf_tc_set_md_var(tc, "descr", "link(2) counts are incremented?"); in ATF_TC_HEAD()
86 ATF_REQUIRE(link(path, pathl) == 0); in ATF_TC_BODY()
89 if (sa.st_nlink != sb.st_nlink - 1) in ATF_TC_BODY()
90 atf_tc_fail("incorrect link(2) count"); in ATF_TC_BODY()
106 atf_tc_set_md_var(tc, "descr", "Test error conditions of link(2)"); in ATF_TC_HEAD()
123 ATF_REQUIRE(link(path, pathl) == 0); in ATF_TC_BODY()
124 ATF_REQUIRE_ERRNO(EEXIST, link(path, pathl) == -1); in ATF_TC_BODY()
127 ATF_REQUIRE_ERRNO(ENAMETOOLONG, link(buf, "xxx") == -1); in ATF_TC_BODY()
130 ATF_REQUIRE_ERRNO(ENOENT, link(path, "/d/c/b/a") == -1); in ATF_TC_BODY()
133 ATF_REQUIRE_ERRNO(ENOENT, link("/a/b/c/d", path) == -1); in ATF_TC_BODY()
136 ATF_REQUIRE_ERRNO(ENOENT, link("/a/b/c/d", "/d/c/b/a") == -1); in ATF_TC_BODY()
139 ATF_REQUIRE_ERRNO(EFAULT, link(path, (const char *)-1) == -1); in ATF_TC_BODY()
142 ATF_REQUIRE_ERRNO(EFAULT, link((const char *)-1, "xxx") == -1); in ATF_TC_BODY()
158 atf_tc_set_md_var(tc, "descr", "Test permissions with link(2)"); in ATF_TC_HEAD()
167 rv = link("/root", "/root.link"); in ATF_TC_BODY()
168 ATF_REQUIRE_MSG(rv == -1 && (errno == EACCES || errno == EPERM), in ATF_TC_BODY()
169 "link to a directory did not fail with EPERM or EACCESS; link() " in ATF_TC_BODY()
174 link("/root/.profile", "/root/.profile.link") == -1); in ATF_TC_BODY()
197 ATF_REQUIRE(link(path, pathl) == 0); in ATF_TC_BODY()
221 ATF_TP_ADD_TCS(tp) in ATF_TP_ADD_TCS() argument
224 ATF_TP_ADD_TC(tp, link_count); in ATF_TP_ADD_TCS()
225 ATF_TP_ADD_TC(tp, link_err); in ATF_TP_ADD_TCS()
226 ATF_TP_ADD_TC(tp, link_perm); in ATF_TP_ADD_TCS()
227 ATF_TP_ADD_TC(tp, link_stat); in ATF_TP_ADD_TCS()