md5, sha1, sha256, sha512: add gl_SET_CRYPTO_CHECK_DEFAULT
[gnulib.git] / ChangeLog
index aa5c36f..9688c32 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,179 @@
+2013-12-07  Paul Eggert  <eggert@cs.ucla.edu>
+
+       md5, sha1, sha256, sha512: add gl_SET_CRYPTO_CHECK_DEFAULT
+       This provides a new way to specify the default for
+       gl_CRYPTO_CHECK, one that is reflected in the --help message.
+       Emacs uses this, as well as the old way.
+       This attempts to implement a suggestion by Pádraig Brady in
+       <http://lists.gnu.org/archive/html/coreutils/2013-12/msg00080.html>.
+       * m4/gl-openssl.m4(gl_SET_CRYPTO_CHECK_DEFAULT): New macro.
+       (gl_CRYPTO_CHECK): Use it.  Mention the default in --help output.
+
+       md5, sha1, sha256, sha512: add 'auto', and a way to specify default
+       * m4/gl-openssl.m4 (gl_CRYPTO_CHECK):
+       Add support for a new option, --with-openssl=auto, which causes
+       the library to be used if available and silently ignored if not.
+       Add support to allow allow configure.ac to specify its own
+       default, by setting with_openssl_default before invoking gl_INIT.
+
+2013-12-05  Paul Eggert  <eggert@cs.ucla.edu>
+
+       open-tests: port to glibc with _FORTIFY_SOURCE and -O1
+       Problem reported by Daiki Ueno in:
+       http://lists.gnu.org/archive/html/bug-gnulib/2013-06/msg00052.html
+       * tests/test-open.h (__always_inline):
+       New macro, if not already defined.
+       (test_open): Use it.
+
+2013-12-04  Eric Blake  <eblake@redhat.com>
+
+       include_next: minimize code duplication
+       * modules/include_next (Depends-on): Add absolute-header.
+       * m4/include_next.m4 (gl_NEXT_HEADERS_INTERNAL): Reuse
+       gl_ABSOLUTE_HEADER_ONE instead of open-coding it.
+
+2013-12-04  Pádraig Brady <P@draigBrady.com>
+
+       getcwd: fix compile error in configure check
+       * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): Include errno.h
+
+2013-12-04  Pádraig Brady <P@draigBrady.com>
+
+       regex: suppress core dumps from detection code
+       * m4/regex.m4 (gl_REGEX): Catch the SIGABRT and convert to SIGTERM
+       to suppress core dumps that may well occur on glibc systems.
+       These core dumps might not be cleaned up automatically, or could
+       trigger some system core dump handling logic.
+
+2013-12-03  Pádraig Brady <P@draigBrady.com>
+
+       md5, sha1, sha256, sha512: support mandating use of openssl
+       * m4/gl-openssl.m4 (gl_crypto_check): Adjust the --with-openssl
+       description, to list the now 3 separate options.  also don't
+       mention the default=no, since this is implicit given the option
+       is described as --with-openssl rather than --without-openssl.
+       If projects change the default they're free to document that.
+       with --with-openssl[=yes] we now error out when the specified
+       hash algorithm is not available in libcrypto.
+
+2013-12-03  Ivailo  <xakepa10@gmail.com>
+
+       test-xvasprintf: (trivial) fix to disable some -Wformat-security diags
+       * tests/test-xvasprintf.c: Disable -Wformat-zero-length and
+       -Wformat-nonliteral checks, as these edge cases are part of the test.
+
+2013-12-03  Eric Blake  <eblake@redhat.com>
+
+       regex: avoid glibc deadlock during configure
+       * m4/regex.m4 (gl_REGEX): Avoid recursive malloc deadlock when
+       glibc bug 15078 in turn triggers bug 16159.
+       Reported by Michal Privoznik.
+
+2013-12-02  Pádraig Brady <P@draigBrady.com>
+
+       md5, sha1, sha256, sha512: use openssl routines if available.
+       --with-openssl the libcrypto md5, sha1, sha224, sha256, sha384, sha256
+       routines will be used if available, requiring apps to link @LIB_CRYPTO@
+       * lib/gl_openssl.h: Provide wrappers for specified openssl hash.
+       * m4/gl-openssl.m4 (gl_CRYPTO_CHECK): New function to lookup libcrypto
+       in the standard system location.
+       * m4/sha1.m4: Call gl_CRYPTO_CHECK() for SHA1.
+       * m4/sha256.m4: Likewise with SHA256.
+       * m4/sha512.m4: Likewise with SHA512.
+       * m4/md5.m4: Likewise with MD5.
+       * m4/gc.m4: Ensure @LIB_CRYPTO@ set for tests.
+       * lib/sha1.h: Include wrappers if HAVE_OPENSSL_SHA1.
+       * lib/sha256.h: Likewise with SHA256.
+       * lib/sha512.h: Likewise with SHA512.
+       * lib/md5.h: Likewise with MD5.
+       * lib/sha1.c: Exlude functionality if HAVE_OPENSSL_SHA1.
+       * lib/sha256.c: Likewise with SHA256.
+       * lib/sha512.c: Likewise with SHA512.
+       * lib/md5.c: Likewise with MD5.
+       * modules/crypto/sha1 (Link:): Add the new optional lib.
+       (Depends-on:): Add dependency on extern-inline.
+       * modules/crypto/sha256: Likewise.
+       * modules/crypto/sha512: Likewise.
+       * modules/crypto/md5: Likewise.
+       * modules/crypto/sha1-tests: Reference the lib here too.
+       * modules/crypto/md5-tests: Likewise.
+       * modules/crypto/gc-des-tests: Likewise.
+       * modules/crypto/gc-hmac-md5-tests: Likewise.
+       * modules/crypto/gc-hmac-sha1-tests: Likewise.
+       * modules/crypto/gc-hmac-sha256-tests: Likewise.
+       * modules/crypto/gc-hmac-sha512-tests: Likewise.
+       * modules/crypto/gc-md5-tests: Likewise.
+       * modules/crypto/gc-pbkdf2-sha1-tests: Likewise.
+       * modules/crypto/gc-sha1-tests: Likewise.
+       * modules/crypto/gc-tests: Likewise.
+       * modules/crypto/hmac-md5-tests: Likewise.
+       * modules/crypto/hmac-sha1-tests: Likewise.
+       * modules/crypto/hmac-sha256-tests: Likewise.
+       * modules/crypto/hmac-sha512-tests: Likewise.
+
+2013-11-29  RV1971  <rv1971@web.de>
+
+       base64: (trivial) fix compilation regression on some compilers
+       * lib/base64.c: Don't return the void function,
+       instead split to a separate return statement.
+
+2013-11-28  Paul Eggert  <eggert@cs.ucla.edu>
+
+       ignore-value: revert previous code change
+       * lib/ignore-value.h (ignore_value): Use __extension__ and
+       __typeof__ only for GCC 3.4 and later.  Reported by Eric Blake in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-11/msg00102.html>.
+       Change the comment to try to explain this better.
+
+2013-11-27  Pádraig Brady <P@draigBrady.com>
+
+       selinux-h: improve stub types and add more stub functions
+
+       * lib/se-selinux.in.h: Change security_context_t to a typedef
+       rather than a define, as it's a pointer type and so is better
+       as a typedef to avoid issues declaring multiple variables
+       with the comma operator.  Also add stub for string_to_security_class().
+       * lib/se-context.in.h: Add stub functions for
+       context_{type,range,role,user}_get().
+
+2013-11-27  Paul Eggert  <eggert@cs.ucla.edu>
+
+       ignore-value: prefer GCC version back through 2.0
+       The code didn't match the comments, so I did a bit of software
+       archaeology.  GCC 2.0 seems to support __extension__ and
+       __typeof__, so fix both code and comments to use 2.0.
+       * lib/ignore-value.h (ignore_value): Use __extension__ and
+       __typeof__ for GCC 2.0 through 3.3, too.
+
+2013-11-25  Mats Erik Andersson  <gnu@gisladisker.se>
+
+       pty: Activate the signature wrapper of forkpty.
+       The intended preprocessor macro HAVE_FORKPTY is
+       never defined, yet `lib/forkpty.c' depends on it.
+
+       * m4/pty.m4 (gl_FUNC_FORKPTY): At completed analysis,
+       apply AC_DEFINE_UNQUOTED to HAVE_FORKPTY with value
+       $HAVE_FORKPTY for access to wrapper in `lib/forkpty.c'.
+
+2013-11-18  Jim Meyering  <meyering@fb.com>
+       and Paul Eggert  <eggert@cs.ucla.edu>
+
+       quotearg: don't attempt to store 1 << 31 into an "int"
+       * lib/quotearg.c (quotearg_buffer_restyled): Building coreutils with
+       gcc's new -fsanitize=undefined and running its tests triggered some
+       new test failures due to undefined behavior, all with this diagnostic:
+         lib/quotearg.c:629:62: runtime error: left shift of 1 by 31 places \
+           cannot be represented in type int
+       Rather than shifting "1" left to form a mask, shift the bits right and
+       simply use "1" as the mask.
+
+2013-11-21  Paul Eggert  <eggert@cs.ucla.edu>
+
+       error: depend on stdio
+       Problem reported by Nikos Mavrogiannopoulos in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-11/msg00084.html>
+       * modules/error (Depends-on): Add stdio.
+
 2013-11-18  Ben Pfaff  <blp@cs.stanford.edu>
 
        * doc/relocatable-maint.texi (Supporting Relocation): Improve