ports/107229: sysutils/coreutils: gcp fails to set default ACL which causes OOo make failure
橋 宏彰
hasi at cskk-sv.co.jp
Fri Mar 23 10:00:15 UTC 2007
The following reply was made to PR ports/107229; it has been noted by GNATS.
From: =?iso-2022-jp?B?GyRCNjYbKEIgGyRCOSg+NBsoQg==?= <hasi at cskk-sv.co.jp>
To: bug-followup at FreeBSD.org, jau at iki.fi
Cc:
Subject: Re: ports/107229: sysutils/coreutils: gcp fails to set default ACL
which causes OOo make failure
Date: Fri, 23 Mar 2007 18:42:02 +0900 (JST)
This problem is caused by the following conditions.
- preserve permissions. (-p)
- copy a directory. (-r)
- source directory have no default acl.
at copy_acl in lib/acl.c
acl_get_file return a zero count acl if a source directory have no
default acl.(acl->ats_acl.acl_cnt == 0)
acl_set_file return with error EINVAL, if acl is zero count.
In this case, /bin/cp is not copy default acl.
at preserve_dir_acls in src/bin/cp/util.c
if (aclp->acl_cnt != 0 && aclsetf(dest_dir,
ACL_TYPE_DEFAULT, acl) < 0) {
fix patch following
--- lib/acl.c~ Tue Sep 26 00:52:29 2006
+++ lib/acl.c Fri Mar 23 16:34:24 2007
@@ -280,7 +280,7 @@
return -1;
}
- if (acl_set_file (dst_name, ACL_TYPE_DEFAULT, acl))
+ if (acl->ats_acl.acl_cnt > 0 && acl_set_file (dst_name, ACL_TYPE_DEFAULT, acl))
{
error (0, errno, _("preserving permissions for %s"),
quote (dst_name));
More information about the freebsd-ports-bugs
mailing list