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