projects
/
pspp
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
c9c845c
)
Don't test the ACL_TYPE_DEFAULT ACL on OSF/1.
author
Bruno Haible
<bruno@clisp.org>
Sun, 8 Jun 2008 03:08:56 +0000
(
05:08
+0200)
committer
Bruno Haible
<bruno@clisp.org>
Sun, 8 Jun 2008 03:08:56 +0000
(
05:08
+0200)
ChangeLog
patch
|
blob
|
history
lib/file-has-acl.c
patch
|
blob
|
history
diff --git
a/ChangeLog
b/ChangeLog
index e9e48fa5dbd51242945aaec571efe994468653ba..9d4305e19e029189ad5ae55120ec7c650d523599 100644
(file)
--- a/
ChangeLog
+++ b/
ChangeLog
@@
-1,3
+1,9
@@
+2008-06-07 Bruno Haible <bruno@clisp.org>
+
+ Improve support for Tru64 ACLs.
+ * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
+ ACL on OSF/1.
+
2008-06-07 Bruno Haible <bruno@clisp.org>
Add support for MacOS X ACLs.
2008-06-07 Bruno Haible <bruno@clisp.org>
Add support for MacOS X ACLs.
diff --git
a/lib/file-has-acl.c
b/lib/file-has-acl.c
index f3d8bfdac2da5441c10e587dfb5621be8e1c1721..53920a1e0be6832290df2dccd105bc55a180fad7 100644
(file)
--- a/
lib/file-has-acl.c
+++ b/
lib/file-has-acl.c
@@
-159,6
+159,16
@@
file_has_acl (char const *name, struct stat const *sb)
saved_errno = errno;
acl_free (acl);
errno = saved_errno;
saved_errno = errno;
acl_free (acl);
errno = saved_errno;
+# if HAVE_ACL_FREE_TEXT /* Tru64 */
+ /* On OSF/1, acl_get_file (name, ACL_TYPE_DEFAULT) always
+ returns NULL with errno not set. There is no point in
+ making this call. */
+# else /* FreeBSD, IRIX */
+ /* On Linux, FreeBSD, IRIX, acl_get_file (name, ACL_TYPE_ACCESS)
+ and acl_get_file (name, ACL_TYPE_DEFAULT) on a directory
+ either both succeed or both fail; it depends on the
+ filesystem. Therefore there is no point in making the second
+ call if the first one already failed. */
if (ret == 0 && S_ISDIR (sb->st_mode))
{
acl = acl_get_file (name, ACL_TYPE_DEFAULT);
if (ret == 0 && S_ISDIR (sb->st_mode))
{
acl = acl_get_file (name, ACL_TYPE_DEFAULT);
@@
-170,6
+180,7
@@
file_has_acl (char const *name, struct stat const *sb)
else
ret = -1;
}
else
ret = -1;
}
+# endif
}
else
ret = -1;
}
else
ret = -1;