New function for testing triviality of ACL with POSIX-draft like API.
[gnulib.git] / ChangeLog
index 71ae836..9260f75 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,386 @@
+2008-06-04  Bruno Haible  <bruno@clisp.org>
+
+       * lib/acl-internal.h (acl_access_nontrivial): New declaration.
+       * lib/file-has-acl.c (acl_access_nontrivial): New function.
+       (file_has_acl): Use it. Save errno afterwards.
+       * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
+
+2008-06-03  Bruno Haible  <bruno@clisp.org>
+
+       * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
+       draft code. Simplify #ifs.
+       * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
+       Put Solaris code after POSIX-draft code. Fix comments regarding
+       Solaris 10, HP-UX. Mention Cygwin.
+       * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
+
+2008-06-03  Eric Blake  <ebb9@byu.net>
+
+       Provide fallback for older kernels.
+       * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
+       Provide runtime fallback if kernel lacks support.
+       Reported by Mike Frysinger.
+
+2008-06-02  Bruno Haible  <bruno@clisp.org>
+
+       * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
+       it exists.
+
+2008-06-02  Bruno Haible  <bruno@clisp.org>
+
+       * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
+       * lib/copy-acl.c (qcopy_acl): Update comment.
+
+2008-06-02  Bruno Haible  <bruno@clisp.org>
+
+       * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
+       like ACL APIs.
+
+2008-06-02  Bruno Haible  <bruno@clisp.org>
+
+       * tests/test-file-has-acl.sh: Use different code for Cygwin.
+       * tests/test-set-mode-acl.sh: Likewise.
+       * tests/test-copy-acl.sh: Likewise.
+       * tests/test-copy-file.sh: Likewise.
+
+2008-06-02  Bruno Haible  <bruno@clisp.org>
+
+       * tests/test-file-has-acl.sh: Remove unused code.
+
+2008-06-01  Bruno Haible  <bruno@clisp.org>
+
+       * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
+       (copy_acl): Just a wrapper around qcopy_acl that emits the error
+       messages.
+       * lib/set-mode-acl.c (qset_acl): Document return value precisely.
+
+2008-06-01  Bruno Haible  <bruno@clisp.org>
+
+       * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
+       tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
+       needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
+       APIs.
+       * modules/acl-tests (configure.ac): Remove tests now contained in
+       m4/acl.m4.
+
+2008-06-02  Jim Meyering  <meyering@redhat.com>
+
+       announce-gen: use a better key-server host name
+       * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
+       it may be more consistently reliable.  Suggested by Werner Koch
+       in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
+
+2008-06-01  Bruno Haible  <bruno@clisp.org>
+
+       * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
+       Reported by Voroskoi Andras <voroskoi@gmail.com>.
+
+2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
+
+       * lib/stdio-impl.h [__DragonFly__]: Fix typo.
+
+2008-06-01  Bruno Haible  <bruno@clisp.org>
+
+       New ACL tests.
+       * tests/test-file-has-acl.sh: New file.
+       * tests/test-file-has-acl.c: New file.
+       * tests/test-set-mode-acl.sh: New file.
+       * tests/test-set-mode-acl.c: New file.
+       * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
+       * tests/test-copy-acl.c: New file.
+       * modules/acl-tests: New file, based on modules/copy-file-tests.
+       * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
+       (Depends-on): Add acl-tests.
+       (configure.ac): Remove checks.
+       (Makefile.am): Don't create test-sameacls program here any more.
+
+2008-06-01  Bruno Haible  <bruno@clisp.org>
+
+       * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
+       * tests/test-sameacls.c: Include progname.h.
+       (main): Invoke set_program_name. Portability fixes for MacOS X,
+       Solaris, HP-UX.
+
+2008-06-01  Bruno Haible  <bruno@clisp.org>
+
+       * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
+       function.
+       Reported by VOROSKOI Andras <voroskoi@gmail.com>.
+
+2008-06-01  Bruno Haible  <bruno@clisp.org>
+
+       * modules/rpmatch (Depends-on): Add strdup.
+
+2008-06-01  Bruno Haible  <bruno@clisp.org>
+
+       * lib/pipe.c: Include unistd-safer.h.
+       (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
+       * modules/pipe (Depends-on): Add unistd-safer.
+
+2008-05-30  Simon Josefsson  <simon@josefsson.org>
+
+       * modules/autobuild (configure.ac): Call AB_INIT.
+
+2008-05-30  Simon Josefsson  <simon@josefsson.org>
+
+       * tests/test-getaddrinfo.c: Don't print debug messages by default.
+       Suggested by Bruno Haible <bruno@clisp.org>.
+
+2008-05-30  Simon Josefsson  <simon@josefsson.org>
+
+       * tests/test-base64.c: Cast size_t to unsigned long when invoking
+       printf.  Use %lu instead of %d.  Reported by Bruno Haible
+       <bruno@clisp.org>.
+
+2008-05-29  Eric Blake  <ebb9@byu.net>
+
+       Prefer new POSIX 200x interfaces over futimesat.
+       * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
+       * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
+       when available.
+       [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
+
+2008-05-28  Bruno Haible  <bruno@clisp.org>
+
+       * modules/stpcpy (License): Change to LGPLv2+.
+       Requested by David Lutterkort <dlutter@redhat.com>.
+
+2008-05-27  Bruno Haible  <bruno@clisp.org>
+
+       * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
+       current mingw.
+       Reported by Jose E. Marchesi <jemarch@gnu.org>.
+
+2008-05-27  Bruno Haible  <bruno@clisp.org>
+
+       * modules/iconv_open (Link): New section, from module 'iconv'.
+       * modules/striconv (Link): Likewise.
+       * modules/striconveh (Link): Likewise.
+       * modules/xstriconv (Link): Likewise.
+       * modules/unicodeio (Link): Likewise.
+       * modules/propername (Link): Likewise.
+       Reported by Jim Meyering.
+
+2008-05-26  Jim Meyering  <meyering@redhat.com>
+
+       sha256: do not artificially restrict buffer length to be < 2^32
+       * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
+       uint32_t to size_t.
+       * lib/sha256.c (sha256_conclude_ctx): Change type of a local
+       to match.
+
+       avoid unaligned access errors, e.g., on sparc
+       * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
+       direct access through a possibly-unaligned uint64* pointer.
+       * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
+       direct access through a possibly-unaligned uint32* pointer.
+       Prompted by this patch from Tom "spot" Callaway:
+       http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
+
+       sha512.c: fix typo in comment
+       * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
+
+2008-05-25  Bruno Haible  <bruno@clisp.org>
+
+       * lib/set-mode-acl.c: Renamed from lib/acl.c.
+       * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
+       (Makefile.am): Update lib_SOURCES.
+
+2008-05-25  Bruno Haible  <bruno@clisp.org>
+
+       * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
+
+2008-05-25  Jim Meyering  <meyering@redhat.com>
+
+       useless-if-before-free: freed expr may have white-space differences
+       * build-aux/useless-if-before-free: Recognize cases in which the
+       freed expression differs from the tested one in embedded white
+       space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
+       $1 was used, so we can't make any regexp shy.  Improved tests now
+       detect this.
+
+       useless-if-before-free: accept white space in the expression.
+       * build-aux/useless-if-before-free: For now, any white space
+       in the expression must be identical in the free argument.
+
+       useless-if-before-free: efficiency tweak
+       * build-aux/useless-if-before-free: Make the expression-matching
+       regexp "shy".
+       Make the *outer* regexp shy, not the expr-matching one.
+
+       update code-in-comment to accept cast of free arg
+       * build-aux/useless-if-before-free: Update regexp.
+
+2008-05-25  Bruno Haible  <bruno@clisp.org>
+
+       * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
+       * modules/copy-file-tests (Files, Makefile.am): Update.
+       * tests/test-copy-file.c (func_test_copy): Update.
+
+2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
+
+       * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
+
+2008-05-23  Bruno Haible  <bruno@clisp.org>
+
+       Improve support for ACLs on OSF/1.
+       * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
+       Remove fallback for unknown flavors of ACLs.
+
+2008-05-22  Bruno Haible  <bruno@clisp.org>
+
+       Add support for ACLs on OSF/1.
+       * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
+       replacements.
+       (acl_free_text): New macro fallback.
+       * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
+       acl_free.
+       * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
+       acl_free_text function. Require AC_C_INLINE.
+
+2008-05-22  Bruno Haible  <bruno@clisp.org>
+
+       Make copy_acl work on MacOS X 10.5.
+       * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
+       (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
+       * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
+       If MODE_INSIDE_ACL, don't assume that every system has the same text
+       representation for ACLs as FreeBSD.
+       * lib/copy-acl.c (copy_acl): Add support for platforms with
+       !MODE_INSIDE_ACL.
+       * lib/file-has-acl.c (file_has_acl): Likewise.
+       * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
+       FreeBSD, MacOS X, or IRIX, respectively.
+
+2008-05-22  Bruno Haible  <bruno@clisp.org>
+
+       * lib/acl.h: Don't include <sys/acl.h>.
+       (GETACLCNT): Move fallback to lib/acl-internal.h.
+       * lib/acl-internal.h: Include <sys/acl.h> here.
+       (GETACLCNT): New macro fallback, moved here from lib/acl.h.
+
+2008-05-22  Bruno Haible  <bruno@clisp.org>
+
+       Split off copy_acl function to separate file.
+       * lib/copy-acl.c: New file, extracted from lib/acl.c.
+       * lib/acl.c (copy_acl): Moved function to separate file.
+       * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
+       * modules/acl (Files): Add lib/copy-acl.c.
+       (Makefiles.am): Augment lib_SOURCES.
+
+2008-05-22  Bruno Haible  <bruno@clisp.org>
+
+       * modules/copy-file-tests: New file.
+       * tests/test-copy-file.sh: New file.
+       * tests/test-copy-file.c: New file.
+       * tests/test-copy-file-sameacls.c: New file.
+
+2008-05-22  Eric Blake  <ebb9@byu.net>
+
+       Avoid gcc warning.
+       * tests/test-memcmp.c (main): Pass NULL indirectly.
+
+2008-05-21  Bruno Haible  <bruno@clisp.org>
+
+       Add reference doc about ACLs.
+       * doc/acl-resources.txt: New file.
+       * doc/acl-cygwin.txt: New file.
+
+2008-05-21  Bruno Haible  <bruno@clisp.org>
+
+       Avoid one more warning from gcc.
+       * lib/vasnprintf.c (IF_LINT): Update comments.
+       (VASNPRINTF): Use it also for the 'prefix' array initializer.
+
+2008-05-21  Jim Meyering  <meyering@redhat.com>
+
+       avoid a warning from gcc
+       * lib/vasnprintf.c (IF_LINT): Define.
+       (scale10_round_decimal_long_double):
+       Use it to avoid a "may be used uninitialized" warning.
+       (scale10_round_decimal_double): Likewise.
+
+2008-05-21  Simon Josefsson  <simon@josefsson.org>
+
+       * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
+       declared.
+
+2008-05-20  Bruno Haible  <bruno@clisp.org>
+
+       * tests/test-memcmp.c (main): Test also the sign of the result. Test
+       against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
+
+2008-05-20  Simon Josefsson  <simon@josefsson.org>
+
+       * modules/memcmp-tests: New file.
+       * tests/test-memcmp.c: New file.
+
+2008-05-19  Bruno Haible  <bruno@clisp.org>
+
+       * modules/propername (Notice, configure.ac): Put quoted "..." into
+       --keyword option.
+       * lib/propername.h: Update comments accordingly.
+       Reported by Eric Blake.
+
+2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
+
+       * modules/getpass-gnu (Depends-on): Add fseeko.
+
+2008-05-19  Simon Josefsson  <simon@josefsson.org>
+
+       * modules/base64-tests: New file.
+
+2008-05-19  Bo Borgerson <gigabo@gmail.com>
+
+       * lib/base64.c (base64_decode_ctx): If a decode context structure
+       was passed in use it to ignore newlines.  If a context structure
+       was _not_ passed in, continue to treat newlines as garbage (this
+       is the historical behavior).  Formerly base64_decode.
+       (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
+       takes a decode context structure.
+       * lib/base64.h (base64_decode): Macro for four-argument calls.
+       (base64_decode_alloc): Likewise.
+       * lib/base64.c (base64_decode_ctx): If a decode context structure
+       was passed in use it to ignore newlines.  If a context structure
+       was _not_ passed in, continue to treat newlines as garbage (this
+       is the historical behavior).  Formerly base64_decode.
+       (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
+       takes a decode context structure.
+       * lib/base64.h (base64_decode): Macro for four-argument calls.
+       (base64_decode_alloc): Likewise.
+
+2008-05-19  Jim Meyering  <meyering@redhat.com>
+
+       avoid a warning from gcc
+       * lib/trim.c (IF_LINT): Define.
+       (trim2): Use it to avoid a "may be used uninitialized" warning.
+
+       Fix doc typo.
+       * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
+
+2008-05-19  Bruno Haible  <bruno@clisp.org>
+
+       * doc/glibc-functions/getpass.texi: Document limits of other
+       implementations.
+
+2008-05-19  Simon Josefsson  <simon@josefsson.org>
+           Bruno Haible <bruno@clisp.org>
+
+       * doc/glibc-functions/getpass.texi: Document gnulib implementation.
+
+2008-05-18  Bruno Haible  <bruno@clisp.org>
+
+       * modules/propername: New file, from GNU gettext.
+       * lib/propername.h: New file, from GNU gettext.
+       * lib/propername.c: New file, from GNU gettext.
+       * MODULES.html.sh (Internationalization functions): Add propername.
+
+2008-05-16  Jim Meyering  <meyering@redhat.com>
+           Bruno Haible  <bruno@clisp.org>
+
+       Avoid some warnings from "gcc -Wshadow".
+       * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
+
 2008-05-15  Eric Blake  <ebb9@byu.net>
 
        Extend previous patch to cygwin 1.7.0.
 
 2008-05-15  Jim Meyering  <meyering@redhat.com>
 
-       avoid distracting test output when git or cvs is not fount
+       avoid distracting test output when git or cvs is not found
        * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
        * tests/test-vc-list-files-git.sh: Likewise.
 
 
        avoid a warning from gcc
        * lib/getndelim2.c (IF_LINT): Define.
-       (getndelim2): Use it to void a "may be used uninitialized" warning.
+       (getndelim2): Use it to avoid a "may be used uninitialized" warning.
 
        vc-list-files: work properly with build-aux/cvsu, too
        * build-aux/vc-list-files: Hoist the "./"-removing code to apply