From 9568fb6df09e404d7fbf32012aa23fecafe47bef Mon Sep 17 00:00:00 2001 From: martin Date: Mon, 21 Apr 2014 14:39:36 +0000 Subject: When a hard link to a directory fails, accept both EPERM and EACCESS as valid error codes. --- tests/lib/libc/sys/t_link.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'tests') diff --git a/tests/lib/libc/sys/t_link.c b/tests/lib/libc/sys/t_link.c index 3949184ba00..b58c4c9e6d8 100644 --- a/tests/lib/libc/sys/t_link.c +++ b/tests/lib/libc/sys/t_link.c @@ -1,4 +1,4 @@ -/* $NetBSD: t_link.c,v 1.1 2011/07/07 06:57:53 jruoho Exp $ */ +/* $NetBSD: t_link.c,v 1.2 2014/04/21 14:39:36 martin Exp $ */ /*- * Copyright (c) 2011 The NetBSD Foundation, Inc. @@ -29,7 +29,7 @@ * POSSIBILITY OF SUCH DAMAGE. */ #include -__RCSID("$NetBSD: t_link.c,v 1.1 2011/07/07 06:57:53 jruoho Exp $"); +__RCSID("$NetBSD: t_link.c,v 1.2 2014/04/21 14:39:36 martin Exp $"); #include #include @@ -160,9 +160,13 @@ ATF_TC_HEAD(link_perm, tc) ATF_TC_BODY(link_perm, tc) { + int rv; - errno =0; - ATF_REQUIRE_ERRNO(EACCES, link("/root", "/root.link") == -1); + errno = 0; + rv = link("/root", "/root.link"); + ATF_REQUIRE_MSG(rv == -1 && (errno == EACCES || errno == EPERM), + "link to a directory did not fail with EPERM or EACCESS; link() " + "returned %d, errno %d", rv, errno); errno = 0; ATF_REQUIRE_ERRNO(EACCES, -- cgit