memmem, strstr, strcasestr: fix bug with long periodic needle
[gnulib.git] / ChangeLog
index 1f3700d..19b5be8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,277 @@
+2010-10-05  Eric Blake  <eblake@redhat.com>
+
+       memmem, strstr, strcasestr: fix bug with long periodic needle
+       * lib/str-two-way.h (two_way_long_needle): Avoid bug with long
+       periodic needle having false positive.
+       * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): Detect bug in glibc 2.12
+       and cygwin 1.7.7.
+       (gl_FUNC_MEMMEM): Be more pessimistic when cross-compiling.
+       * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE)
+       (gl_FUNC_STRCASESTR): Likewise.
+       * m4/strstr.m4 (gl_FUNC_STRSTR_SIMPLE, gl_FUNC_STRSTR): Likewise.
+       * tests/test-memmem.c (main): Expose the bug.
+       * tests/test-strcasestr.c (main): Likewise.
+       * tests/test-strstr.c (main): Likewise.
+       * tests/test-c-strcasestr.c (main): Likewise.
+       * doc/glibc-functions/memmem.texi (memmem): Document the bug.
+       * doc/posix-functions/strstr.texi (strstr): Likewise.
+       * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
+       Reported via http://sourceware.org/bugzilla/show_bug.cgi?id=12092
+
+2010-10-05  Paul Eggert  <eggert@cs.ucla.edu>
+
+       parse-datetime: do some more renaming
+       * doc/parse-datetime.texi (Authors of parse_datetime): Call it
+       parse_datetime, not get_date.  Mention the renaming.
+       * lib/parse-datetime.y:  Call it parse_datetime, not getdate,
+       in comments.
+       * m4/bison.m4: Likewise.
+
+2010-10-05  Eric Blake  <eblake@redhat.com>
+
+       parse-datetime: better name than get_date
+       * NEWS: Reword the deprecation notice.
+       * modules/get_date: Rename to modules/parse-datetime.
+       * modules/get_date-tests: Rename to modules/parse-datetime-tests.
+       * m4/get_date.m4: Rename to m4/parse-datetime.m4.
+       * lib/get_date.y: Rename to lib/parse-datetime.y.
+       * tests/test-get_date.c: Rename to tests/test-parse-datetime.c.
+       * doc/get_date.texi: Rename to doc/parse-datetime.texi.
+       * doc/getdate.texi: Provide fallback wrapper.
+       * lib/getdate.h: Move guts, and wrap...
+       * lib/parse-datetime.h: ...new file.
+       * lib/parse-datetime.y (get_date): Rename...
+       (parse_datetime): ...to this.
+       * m4/parse-datetime.m4 (gl_GET_DATE): Rename...
+       (gl_PARSE_DATETIME): ...to this.
+       * doc/posix-functions/getdate.texi (get_date): Provide fallback
+       documentation.
+       * modules/getdate (Files): Provide fallback docs and header.
+       (Notice, Depends-on): Update references.
+       * tests/test-parse-datetime.c: Likewise.
+       * DEPENDENCIES: Likewise.
+       * MODULES.html.sh (Date and time <time.h>): Likewise.
+       * doc/parse-datetime.texi (Date input formats)
+       (Authors of parse_datetime): Likewise.
+       * modules/parse-datetime (Files, configure.ac, Makefile.am)
+       (Include): Likewise.
+       * modules/parse-datetime-tests (Files, Makefile.am): Likewise.
+       * gnulib-tool: Likewise.
+       * m4/bison.m4 (gl_BISON): Likewise.
+       Suggested by Bruno Haible.
+
+2010-10-05  Paul Eggert  <eggert@cs.ucla.edu>
+
+       more ports to Solaris tr, which needs [] around ranges
+       * gnulib-tool: Solaris tr needs [] around ranges.
+       * m4/fnmatch.m4 (gl_FUNC_FNMATCH_POSIX): Likewise.
+       * tests/test-pipe-filter-gi1.c (main): Likewise.
+       * tests/test-pipe-filter-ii1.c (main): Likewise.
+
+2010-10-05  Eric Blake  <eblake@redhat.com>
+
+       bootstrap: fix Solaris regression
+       * build-aux/bootstrap (check_versions): Solaris tr still needs []
+       around ranges.
+       Reported by Pádraig Brady.
+
+       bootstrap: work with pkg-config
+       * build-aux/bootstrap (check_versions): Also transliterate - in
+       prerequisite name.
+       (print_versions): Be robust to any \ in $buildreq.  Avoid listing
+       prerequisites that were already found, to avoid confusion.
+       Reported by Justin Clift.
+
+       faccessat: remove unused wrappers
+       * lib/openat.h (accessat, euidaccesat): Delete, since the mere
+       presence of these wrappers dragged in -lgen on Solaris.
+       Reported by Clemens Brogi; fix suggested by Paul Eggert.
+
+2010-10-05  Jim Meyering  <meyering@redhat.com>
+
+       tests: require @PRAGMA_COLUMNS@ with each @PRAGMA_SYSTEM_HEADER@
+       * Makefile (sc_pragma_columns): New syntax-check rule.
+
+2010-10-04  Bruno Haible  <bruno@clisp.org>
+
+       gnulib-tool: Synthesize appropriate _LDFLAGS for a libtool library.
+       * gnulib-tool (func_emit_lib_Makefile_am): When preparing for a libtool
+       library, put '-no-undefined' and the link dependencies into _LDFLAGS.
+       Reported by Bruce Korb and Eric Blake.
+
+2010-10-04  Bruno Haible  <bruno@clisp.org>
+
+       threadlib: Make option --with-libpth-prefix work.
+       * m4/threadlib.m4 (gl_THREADLIB_BODY): When testing whether pth works,
+       use $LIBPTH, not just -lpth.
+
+2010-10-04  Bruno Haible  <bruno@clisp.org>
+
+       Avoid line length limitation from HP NonStop system header files.
+       * m4/include_next.m4 (gl_INCLUDE_NEXT): Define also PRAGMA_COLUMNS.
+       * lib/arpa_inet.in.h: Use PRAGMA_COLUMNS.
+       * lib/ctype.in.h: Likewise.
+       * lib/dirent.in.h: Likewise.
+       * lib/errno.in.h: Likewise.
+       * lib/fcntl.in.h: Likewise.
+       * lib/float.in.h: Likewise.
+       * lib/getopt.in.h: Likewise.
+       * lib/iconv.in.h: Likewise.
+       * lib/inttypes.in.h: Likewise.
+       * lib/langinfo.in.h: Likewise.
+       * lib/locale.in.h: Likewise.
+       * lib/math.in.h: Likewise.
+       * lib/netdb.in.h: Likewise.
+       * lib/netinet_in.in.h: Likewise.
+       * lib/poll.in.h: Likewise.
+       * lib/pthread.in.h: Likewise.
+       * lib/pty.in.h: Likewise.
+       * lib/sched.in.h: Likewise.
+       * lib/se-selinux.in.h: Likewise.
+       * lib/search.in.h: Likewise.
+       * lib/signal.in.h: Likewise.
+       * lib/spawn.in.h: Likewise.
+       * lib/stdarg.in.h: Likewise.
+       * lib/stddef.in.h: Likewise.
+       * lib/stdint.in.h: Likewise.
+       * lib/stdio.in.h: Likewise.
+       * lib/stdlib.in.h: Likewise.
+       * lib/string.in.h: Likewise.
+       * lib/strings.in.h: Likewise.
+       * lib/sys_file.in.h: Likewise.
+       * lib/sys_ioctl.in.h: Likewise.
+       * lib/sys_select.in.h: Likewise.
+       * lib/sys_socket.in.h: Likewise.
+       * lib/sys_stat.in.h: Likewise.
+       * lib/sys_time.in.h: Likewise.
+       * lib/sys_times.in.h: Likewise.
+       * lib/sys_utsname.in.h: Likewise.
+       * lib/sys_wait.in.h: Likewise.
+       * lib/sysexits.in.h: Likewise.
+       * lib/termios.in.h: Likewise.
+       * lib/time.in.h: Likewise.
+       * lib/unistd.in.h: Likewise.
+       * lib/wchar.in.h: Likewise.
+       * lib/wctype.in.h: Likewise.
+       * modules/arpa_inet (Makefile.am): Substitute PRAGMA_COLUMNS.
+       * modules/ctype (Makefile.am): Likewise.
+       * modules/dirent (Makefile.am): Likewise.
+       * modules/errno (Makefile.am): Likewise.
+       * modules/fcntl-h (Makefile.am): Likewise.
+       * modules/float (Makefile.am): Likewise.
+       * modules/getopt-posix (Makefile.am): Likewise.
+       * modules/iconv-h (Makefile.am): Likewise.
+       * modules/inttypes (Makefile.am): Likewise.
+       * modules/langinfo (Makefile.am): Likewise.
+       * modules/locale (Makefile.am): Likewise.
+       * modules/math (Makefile.am): Likewise.
+       * modules/netdb (Makefile.am): Likewise.
+       * modules/netinet_in (Makefile.am): Likewise.
+       * modules/poll-h (Makefile.am): Likewise.
+       * modules/pthread (Makefile.am): Likewise.
+       * modules/pty (Makefile.am): Likewise.
+       * modules/sched (Makefile.am): Likewise.
+       * modules/search (Makefile.am): Likewise.
+       * modules/selinux-h (Makefile.am): Likewise.
+       * modules/signal (Makefile.am): Likewise.
+       * modules/spawn (Makefile.am): Likewise.
+       * modules/stdarg (Makefile.am): Likewise.
+       * modules/stddef (Makefile.am): Likewise.
+       * modules/stdint (Makefile.am): Likewise.
+       * modules/stdio (Makefile.am): Likewise.
+       * modules/stdlib (Makefile.am): Likewise.
+       * modules/string (Makefile.am): Likewise.
+       * modules/strings (Makefile.am): Likewise.
+       * modules/sys_file (Makefile.am): Likewise.
+       * modules/sys_ioctl (Makefile.am): Likewise.
+       * modules/sys_select (Makefile.am): Likewise.
+       * modules/sys_socket (Makefile.am): Likewise.
+       * modules/sys_stat (Makefile.am): Likewise.
+       * modules/sys_time (Makefile.am): Likewise.
+       * modules/sys_times (Makefile.am): Likewise.
+       * modules/sys_utsname (Makefile.am): Likewise.
+       * modules/sys_wait (Makefile.am): Likewise.
+       * modules/sysexits (Makefile.am): Likewise.
+       * modules/termios (Makefile.am): Likewise.
+       * modules/time (Makefile.am): Likewise.
+       * modules/unistd (Makefile.am): Likewise.
+       * modules/wchar (Makefile.am): Likewise.
+       * modules/wctype (Makefile.am): Likewise.
+
+2010-10-04  Bruno Haible  <bruno@clisp.org>
+
+       read-file tests: Avoid a test failure on NonStop Kernel.
+       * tests/test-read-file.c (main): Don't assume that /etc/resolv.conf is
+       a regular file.
+       Reported by Joachim Schmitz <schmitz@hp.com>.
+
+2010-10-03  Bruno Haible  <bruno@clisp.org>
+
+       gnulib-tool: Fixes for --create-testdir with --libtool.
+       * gnulib-tool (func_get_automake_snippet): Don't augment
+       EXTRA_lib_SOURCES for the pt_chown module, since pt_chown.o goes into
+       an executable.
+       (func_create_testdir): Handle module 'alloca' like func_import.
+       Reported by Bruce Korb <bruce.korb@gmail.com>.
+
+2010-10-03  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Avoid some lines longer than 80 characters.
+       * lib/stdint.in.h: Break long comment lines.
+       * lib/math.in.h: Likewise.
+       (_GL_NUM_UINT_WORDS): New macro, for readability.
+       (gl_signbitf, gl_signbitd, gl_signbitl): Use it.
+       * lib/stdio.in.h: Break lines in _GL_WARN_ON_USE calls.
+       * lib/stdlib.in.h: Likewise.
+       * lib/spawn.in.h: Likewise.
+       * lib/sys_socket.in.h: Update an URL.
+       * lib/sys_stat.in.h: Break long line.
+
+2010-10-03  Bruno Haible  <bruno@clisp.org>
+            Joachim Schmitz  <schmitz@hp.com>  (tiny change)
+
+       acl: Add support for ACLs on NonStop Kernel.
+       * m4/acl.m4 (gl_FUNC_ACL): For Solaris, test for facl(), not for acl().
+       Check whether the function aclsort() exists.
+       * lib/acl-internal.h: For Solaris, test HAVE_FACL, not HAVE_ACL.
+       (acl_nontrivial) [HAVE_ACLSORT]: New declaration.
+       * lib/file-has-acl.c: For Solaris, test HAVE_FACL, not HAVE_ACL.
+       (acl_nontrivial [HAVE_ACLSORT]: New function.
+       (file_has_acl): Implement for NonStop Kernel.
+       * lib/set-mode-acl.c: For Solaris, test HAVE_FACL, not HAVE_ACL.
+       (qset_acl): Implement for NonStop Kernel.
+       * lib/copy-acl.c (qcopy_acl): Implement for NonStop Kernel.
+       * tests/test-sameacls.c: For Solaris, test HAVE_FACL, not HAVE_ACL.
+       (main): Implement for NonStop Kernel.
+       * tests/test-file-has-acl.sh (acl_flavor): Set to 'nsk' on NonStop
+       Kernel. Handle this flavor.
+       * tests/test-set-mode-acl.sh: Likewise.
+       * tests/test-copy-acl.sh: Likewise.
+       * tests/test-copy-file.sh: Likewise.
+
+2010-10-03  Bruno Haible  <bruno@clisp.org>
+
+       Info about ACLs on NonStop Kernel.
+       * doc/acl-resources.txt: Add info about NonStop Kernel.
+       References by Joachim Schmitz <schmitz@hp.com>.
+
+2010-10-02  Bruno Haible  <bruno@clisp.org>
+
+       Define missing EDQUOT on NonStop Kernel.
+       * lib/errno.in.h (EDQUOT): Assign a value if missing.
+       * lib/strerror.c (rpl_strerror): Handle missing EDQUOT.
+       * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Also test whether EDQUOT is
+       missing.
+       * doc/posix-headers/errno.texi: Mention the NSK bug.
+       * doc/posix-functions/strerror.texi: Mention the workaround on NSK.
+       Reported by Joachim Schmitz <schmitz@hp.com>.
+
+2010-10-02  Bruno Haible  <bruno@clisp.org>
+
+       Update doc for POSIX:2008.
+       * doc/posix-headers/*.texi [except ucontext.texi, sys_timeb.texi]:
+       Update URL of POSIX specification.
+
 2010-10-02  Bruno Haible  <bruno@clisp.org>
 
        gnulib-tool: In testdirs, use the newest available config.{guess.sub}.