* getaddrinfo.c: Don't include <netdb.h> included from getaddrinfo.h.
[gnulib.git] / lib / ChangeLog
index 973388a..fcfcaad 100644 (file)
@@ -1,7 +1,244 @@
+2005-09-20  Derek Price  <derek@ximbiot.com>
+
+       * getaddrinfo.c: Don't include <netdb.h> included from getaddrinfo.h.
+
+2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       Use a consistent style for including <config.h>.
+       * __fpending.c, acl.c, argmatch.c,
+       argp-help.c, argp-parse.c,
+       argp-pvh.c, backupfile.c, basename.c, c-stack.c,
+       calloc.c, check-version.c, cloexec.c, closeout.c, copy-file.c,
+       creat-safer.c, cycle-check.c, dirfd.c, dirname.c, dup-safer.c,
+       dup2.c, euidaccess.c, exclude.c, exitfail.c, fatal-signal.c,
+       fd-safer.c, file-type.c, fileblocks.c, filemode.c,
+       filenamecat.c, findprog.c, fnmatch.c, fopen-safer.c, free.c,
+       fsusage.c, ftruncate.c, full-write.c, fwriteerror.c,
+       getaddrinfo.c, getcwd.c, getdelim.c, getline.c, getlogin_r.c,
+       getndelim2.c, getnline.c, getopt1.c, getpass.c, group-member.c,
+       hard-locale.c, hash-pjw.c, hash.c, human.c, idcache.c,
+       inet_ntop.c, isdir.c, long-options.c, malloc.c, memcasecmp.c,
+       memcmp.c, memcoll.c, memcpy.c, memmove.c, mkdir-p.c,
+       modechange.c, mountlist.c, open-safer.c, physmem.c,
+       pipe-safer.c, pipe.c, poll.c, posixver.c, progname.c,
+       progreloc.c, putenv.c, quote.c, quotearg.c, readline.c,
+       readlink.c, realloc.c, regex.c, rename.c, rmdir.c, rpmatch.c,
+       safe-read.c, same.c, save-cwd.c, savedir.c, sig2str.c,
+       strcspn.c, strerror.c, stripslash.c, strncasecmp.c, strndup.c,
+       strnlen.c, strnlen1.c, strsep.c, strstr.c, strtod.c,
+       strtoimax.c, strtol.c, strverscmp.c, tempname.c, time_r.c,
+       userspec.c, utimecmp.c, version-etc-fsf.c,
+       version-etc.c, wait-process.c, xalloc-die.c, xgetcwd.c,
+       xmalloc.c, xmemcoll.c, xnanosleep.c, xreadlink.c, xsetenv.c,
+       xstrndup.c, xstrtoimax.c, xstrtol.c, xstrtoumax.c, yesno.c:
+       Standardize inclusion of config.h.
+       * __fpending.h, dirfd.h, getdate.h, human.h,
+       inttostr.h:  Removed inclusion of config.h from header files.
+       * inttostr.c:  Adjusted in-tree users.
+       * timespec.h: Remove superfluous warning to include config.h.
+       * atexit.c, chdir-long.c chown.c, fchown-stub.c, getgroups.c,
+       gettimeofday.c, lchown.c, lstat.c, mkdir.c, mkstemp.c,
+       nanosleep.c, openat.c, raise.c, readtokens0.c, readutmp.c,
+       unlinkdir.c: Guard inclusion of config.h with HAVE_CONFIG_H.
+
+2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * stat-time.h: New file.
+       * timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
+       (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
+       in a different way.
+       (timespec_cmp): New function.
+       * utimecmp.c: Include stat-time.h.
+       (SYSCALL_RESOLUTION): Depend on whether various struct stat
+       members exist, not on the obsolescent ST_MTIM_NSEC.
+       (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
+
+2005-09-15  Derek Price  <derek@ximbiot.com>
+           Paul Eggert  <eggert@cs.ucla.edu>
+
+       * regcomp.c, regexec.c, regex_internal.c: Back out previous
+       changes, consolidating in...
+       * regex_internal.h: ...this file.
+
+2005-09-15  Derek Price  <derek@ximbiot.com>
+
+       * regex_internal.h: Blank `pure' for GNUC < 3.
+       * regex_internal.c: Ditto, using this...
+       (__GNUC_PREREQ): ...new macro.
+       * regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1 using...
+       (__GNUC_PREREQ): ...this new macro.
+
+       * strstr.h: Include string.h. Define strstr as a macro here.
+
+2005-09-13  Derek Price  <derek@ximbiot.com>
+
+       * canon-host.c (canon_host_r): Set *cherror on memory allocation
+       failure.
+       Reported by Jim Meyering  <jim@meyering.net>.
+
+2005-09-13  Jim Meyering  <jim@meyering.net>
+
+       * canon-host.c: Filter through gnu indent and reword comments slightly.
+       * canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
+
+2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
+
+       * lib/base64.c: Typo.
+       (base64_encode): Put b64str in initialized data section.
+
+2005-09-12  Derek Price  <derek@ximbiot.com>
+
+       Return usable errors from canon-host.
+       * canon-host.h: New file.
+       * canon-host.c (canon_host): Wrap...
+       (canon_host_r): ...this new function, which now relies exclusively on
+       getaddrinfo.
+       (ch_strerror): New function.
+       (last_cherror): New global.
+       * getaddrinfo.c: Move include of getaddrinfo.h first to test interface.
+       (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
+       void *.
+       (freeaddrinfo): Free ai->ai_canonname when set.
+
+2005-09-12  Derek Price  <derek@ximbiot.com>
+           Paul Eggert  <eggert@cs.ucla.edu>
+
+       * glob-libc.h: Renamed from glob_.h.  The new version is
+       taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
+       protecting things that should be done only in gnulib contexts.
+       * glob_.h: New file, containing only the glob things needed for
+       gnulib.
+       (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
+       (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
+       (glob, globfree, glob_pattern_p): Now defined simply in terms of
+       rpl_glob, rpl_globfree, rpl_glob_pattern_p.
+       (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
+       and to respect the namespace rules better.
+
+2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Merge glibc and coreutils changes into gnulib, plus a few
+       extra fixes.
+       * md5.c: Use #error rather than a string.
+       (CYCLIC): New macro, from glibc source.  Use it instead of rol.
+       * md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
+       (__attribute__): Define to empty for non recent-GCC.
+       (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
+       (__md5_process_bytes, __md5_read_ctx, __md5_stream):
+       Renamed from their non-__ counterparts, with new macros replacing
+       them if not _LIBC.  Add __THROW attribute.
+       (rol): Remove.
+       (struct md5_ctx): Align buffer if using GCC.
+       * sha1.h (struct sha1_ctx): Likewise.
+       * sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
+       The old name was backwards.
+       (NOTSWAP): Remove; not used.
+       (rol): New macro, moved here from md5.h.
+       (sha1_process_block): Remove a FIXME that doesn't make sense.
+
+2005-09-12  Derek Price  <derek@ximbiot.com>
+
+       * gai_strerror.c: Include config.h when available.  Include
+       getaddrinfo.h before other headers to test interface.
+       Reported by Larry Jones <lawrence.jones@ugs.com>.
+
+2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * glob.c (glob, globfree, __glob_pattern_p): Use old-style function
+       definitions, since that's the preferred style in glibc.
+       Fix a minor spacing issue, and update copyright notice to match glibc's.
+
+2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * regex_internal.h (bitset_not): Add parens to avoid gcc -Wall warning.
+
+2005-09-06  Simon Josefsson  <jas@extundo.com>
+
+       * getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
+       TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
+
+2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Change bitset word type from unsigned int to unsigned long int,
+       as this has better performance on typical 64-bit hosts.
+       Port bitset code to hosts with unusual word sizes.
+       * regcomp.c (build_equiv_class, build_charclass, build_range_exp):
+       (build_collating_symbol):
+       Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
+       argument is a bitset.  This is merely a style issue, but it makes
+       it clearer that an entire array is expected.
+       (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
+       * regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
+       Port to the case where bitset_word is not the same as unsigned int.
+       * regex_internal.h (bitset_set, bitset_clear, bitset_contain):
+       (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
+       Likewise.
+       * regexec.c (check_dst_limits_calc_pos_1, check_subexp_matching_top):
+       (build_trtable, group_nodes_into_DFAstates):
+       Likewise.
+       * regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
+       Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
+       * regex_internal.h (bitset_set_all, bitset_not): Likewise.
+       * regexec.c (group_nodes_into_DFAstates): Likewise.
+       * regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
+       * regcomp.c (optimize_subexps, lower_subexp):
+       Work even if bitset_word has holes in its bitwise representation.
+       * regex_internal.h (BITSET_WORD_BITS): Likewise.
+       * regexec.c (check_dst_limits_calc_pos_1, check_subexp_matching_top):
+       Likewise.
+       * regex_internal.c (re_string_reconstruct):
+       Don't assume UCHAR_MAX == 255.
+       * regex_internal.h (bitset_set_all): Likewise.
+       * regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
+       All uses changed.
+       (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
+       (bitset_word): New type, replacing 'unsigned int' for bitset uses.
+       All uses changed.
+       (BITSET_WORD_MAX): New macro.
+       (bitset_set, bitset_clear, bitset_contain, bitset_empty):
+       (bitset_set_all, bitset_copy):  Now inline functions, not macros.
+       (bitset_empty, bitset_copy):
+       Prefer sizeof (bitset) to multiplying it out ourselves.
+       (bitset_not_merge): Remove; unused.
+       (bitset_contain): Return bool, not unsigned int with one bit on.
+       All callers changed.
+       * regexec.c (build_trtable): Don't assume bitset has no stricter
+       alignment than re_node_set; do this by defining a new internal
+       type struct dests_alloc and using it to allocate memory.
+
+2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Check for arithmetic overflow when calculating sizes, to prevent
+       some buffer-overflow issues.  These patches are conservative, in the
+       sense that when I couldn't determine whether an overflow was possible,
+       I inserted a run-time check.
+       * regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New macros.
+       (SIZE_MAX) [!defined SIZE_MAX]: New macro.
+       (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
+       (re_xnrealloc, re_x2nrealloc): New inline functions.
+       * lib/regcomp.c (init_dfa, analyze, build_range_exp, parse_bracket_exp):
+       (build_equiv_class, build_charclass): Check for arithmetic overflow
+       in size expression calculations.
+       * lib/regex_internal.c (re_string_realloc_buffers):
+       (build_wcs_upper_buffer, re_node_set_add_intersect):
+       (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
+       (re_dfa_add_node, register_state): Likewise.
+       * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
+       (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
+       (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
+       (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
+
 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
 
+       * glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
+       to avoid a collision with bits/local_lim.h in glibc.
+       All uses changed.  Problem reported by Dmitry V. Levin in
+       <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
+
        * regex_internal.c (build_wcs_upper_buffer): Fix portability
        bugs in int versus size_t comparisons.
+       (re_string_context_at): Fix bug where the code assumed that
+       Idx is signed.
 
        Use bool where appropriate.
        * regcomp.c (re_set_fastmap): ICASE arg is bool, not int.