2002-04-27 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/ia64/fxstat.c: Fix a few issues with the
_internal symbol handling.
* sysdeps/unix/sysv/linux/ia64/lxstat.c: Likewise.
2002-04-26 Isamu Hasegawa <isamu@yamato.ibm.com>
* posix/regcomp.c (re_compile_fastmap_iter): Fix fastmap in case of
not _LIBC and RE_ENABLE_I18N.
(build_range_exp): Implement for not _LIBC.
(build_collating_symbol): Likewise.
(parse_bracket_exp): Unify redundant error handlings.
Don't erase mbcset for non matching list in multibyte envs.
(build_word_op): Add '_' to matching list for \w operator.
* posix/regex_internal.c (re_string_construct): Invoke
build_upper_buffer in case of not RE_ENABLE_I18N.
(re_string_reconstruct): Don't touch cur_state in case of not
RE_ENABLE_I18N.
* posix/regex_internal.h (attribute_hidden): New macro in case of
not _LIBC.
(re_charset_t): Define range_starts/ends in case of not _LIBC.
* posix/regexec.c (sift_states_iter_mb): Hide in case of not
RE_ENABLE_I18N.
(transit_state_mb): Likewise.
(check_node_accept_bytes): Implement the code evaluating range
expression in case of not _LIBC.
(find_collation_sequence_value): Hide in case of not _LIBC.
2002-04-26 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c: Copied from
i386/semctl.c.
(__old_semctl, __new_semctl): Only use va_arg if the argument will
be used.
2002-04-22 Isamu Hasegawa <isamu@yamato.ibm.com>
* posix/regcomp.c (re_compile_internal): Adapt it to new interface
of buffer building functions.
* posix/regex_internal.c (re_string_allocate): New function.
(re_string_realloc_buffers): New function.
(re_string_skip_chars): New function.
(re_string_reconstruct): New function.
(re_string_construct): Adapt it to new interface of buffer building
functions.
(re_string_construct_common): Likewise.
(build_wcs_buffer): Likewise.
(build_wcs_upper_buffer): Likewise.
(build_upper_buffer): Likewise.
(re_string_translate_buffer): Likewise.
(re_string_context_at): Adapt it to variable length buffers.
* posix/regex_internal.h (re_string_t): Add new fields to handle
variable length buffers.
(re_match_context_t): Likewise.
* posix/regexec.c (re_search_internal): Adapt it to new interface
of re_string_t and re_match_context_t.
(acquire_init_state_context): Likewise.
(check_matching): Likewise.
(check_halt_state_context): Likewise.
(proceed_next_node): Likewise.
(set_regs): Likewise.
(sift_states_backward): Likewise.
(clean_state_log_if_need): Likewise.
(sift_states_iter_mb): Likewise.
(sift_states_iter_bkref): Likewise.
(add_epsilon_backreference): Likewise.
(transit_state): Likewise.
(transit_state_sb): Likewise.
(transit_state_mb): Likewise.
(transit_state_bkref): Likewise.
(transit_state_bkref_loop): Likewise.
(check_node_accept): Likewise.
(match_ctx_init): Likewise.
(extend_buffers): New function.
2002-04-21 Bruno Haible <bruno@clisp.org>
* iconvdata/tst-table.sh: For the second check, use the truncated
GB18030 charmap table, like for the first check.
2002-04-24 Ulrich Drepper <drepper@redhat.com>
* elf/dl-load.c (open_verify): Correct __lseek parameters.
Patch by Simon Hildrew <simon@hildrew.net> [PR libc/3354].
2002-04-23 H.J. Lu <hjl@gnu.org>
* include/math.h (isfinite): Fix a typo.
2002-04-24 Ulrich Drepper <drepper@redhat.com>
* libio/bug-ungetwc2.c (test_locale): Use the de_DE.UTF-8 locale
which is created by the test suite.
2002-04-20 Bruno Haible <bruno@clisp.org>
* iconvdata/iso-2002-kr.c (MAX_NEEDED_FROM): Set to 4.
(BODY for FROM_LOOP): Fix comparisons between inptr and inend.
2002-04-20 Bruno Haible <bruno@clisp.org>
* iconvdata/johab.c (BODY for FROM_LOOP): Change type of i, m, f,
to avoid gcc warning.
2002-04-20 Bruno Haible <bruno@clisp.org>
* iconvdata/iso-2022-jp.c (EMIT_SHIFT_TO_INIT): Fix modification mask
of data->__statep->__count.
2002-04-20 Bruno Haible <bruno@clisp.org>
* iconvdata/euc-jisx0213.c (BODY for TO_LOOP): Really ignore Unicode
tag characters.
* iconvdata/shift_jisx0213.c (BODY for TO_LOOP): Likewise.
* sysdeps/unix/sysv/linux/x86_64/ldconfig.h: New file.
* sysdeps/unix/sysv/linux/x86_64/dl-cache.h: New file.
use END macro instead of our own .end directive.
Use `callsys' insn mnemonic instead of `call_pal'.
* sysdeps/mach/alpha/sysdep.h (ENTRY): New macro.
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_USER_ADDRESS_MASK): New
macro; we need this for Hurd.
Log entry was missing for 2002/03/24 commit of rev 1.8,
goes with 2002-03-17 changes.
* sysdeps/mach/hurd/i386/Makefile [$(subdir) = misc]
(sysdep_routines): Append ioperm here.
(sysdep_headers): Append sys/io.h here.
* sysdeps/mach/hurd/sendto.c: Likewise.
* hurd/hurdioctl.c (siocgifconf): int -> size_t for DATA_LEN.
* sysdeps/mach/hurd/wait4.c (__wait4): natural_t -> int for SIGCODE.
* sysdeps/mach/hurd/getpriority.c: unsigned int -> size_t for PISIZE.
2002-04-11 Zack Weinberg <zack@codesourcery.com>
* include/rpc/rpc.h (struct rpc_thread_variables): Remove
authnone_private_s.
* sunrpc/auth_none.c: Include bits/libc-lock.h.
Delete #ifdef _RPC_THREAD_SAFE_ block.
(authnone_private): Make a struct, not a pointer to struct.
(authnone_private_guard): New once-control variable.
(authnone_create_once): New function, split out of
authnone_create. No need to allocate memory.
(authnone_create): Just call authnone_create_once via
__libc_once, then return &authnone_private->no_client.
(authnone_marshal): Access private data via CLIENT argument,
not authnone_private pointer.
Fix typo (MAX_MARSHEL_SIZE -> MAX_MARSHAL_SIZE).
* sunrpc/rpc_thread.c (__rpc_thread_destroy): No need to free
authnone_private_s.
2002-04-18 Bruno Haible <bruno@clisp.org>
* iconvdata/euc-jisx0213.c (EMIT_SHIFT_TO_INIT, BODY for
FROM_DIRECTION): Make the FROM direction stateless.
* iconvdata/shift_jisx0213.c (EMIT_SHIFT_TO_INIT, BODY for
FROM_DIRECTION): Likewise.
* iconvdata/cvs11643l1.c: Update comments.
* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
* iconvdata/JISX0213.TXT: New file.
* iconvdata/jisx0213.h: New file.
* iconvdata/jisx0213.c: New file.
* iconvdata/euc-jisx0213.c: New file.
* iconvdata/shift_jisx0213.c: New file.
* iconvdata/gconv-modules (EUC-JISX0213, SHIFT_JISX0213): New modules.
* iconvdata/EUC-JISX0213.precomposed: New file.
* iconvdata/SHIFT_JISX0213.precomposed: New file.
* iconvdata/SHIFT_JISX0213.irreversible: New file.
* iconvdata/tst-table-to.c (main): Make it work for encodings for
which the "to" direction is stateful.
* iconvdata/tst-tables.sh: Add EUC-JISX0213, SHIFT_JISX0213.
* iconvdata/Makefile (modules): Add libJISX0213, EUC-JISX0213,
SHIFT_JISX0213.
(libJISX0213-routines): New variable.
(LDFLAGS-EUC-JISX0213.so, LDFLAGS-SHIFT_JISX0213.so): New variables.
(EUC-JISX0213.so, SHIFT_JISX0213.so): Depend on libJISX0213.so.
(LDFLAGS-libJISX0213.so): New variable.
(distribute): Add JISX0213.TXT, EUC-JISX0213.precomposed,
SHIFT_JISX0213.precomposed, SHIFT_JISX0213.irreversible,
jisx0213.c, jisx0213.h, euc-jisx0213.c, shift_jisx0213.c.
2002-04-15 Bruno Haible <bruno@clisp.org>
* iconvdata/big5hkscs.c (big5hkscs_to_ucs): Change element type to
uint32_t. Update to Unicode 3.2.
(from_ucs4, from_ucs4_idx): Update to Unicode 3.2.
(BODY for TO_LOOP): Handle the ASCII range specially.
* iconvdata/BIG5HKSCS.irreversible: Add one more entry.
* iconvdata/testdata/BIG5HKSCS: Remove a character.
* iconvdata/testdata/BIG5HKSCS..UTF-8: Regenerated.
2002-04-15 Bruno Haible <bruno@clisp.org>
* iconvdata/gb18030.c (__twobyte_to_ucs, __fourbyte_to_ucs,
__ucs_to_gb18030_tab1, __ucs_to_gb18030_tab2): Update to Unicode 3.2.
2002-04-15 Bruno Haible <bruno@clisp.org>
* iconvdata/cns11643.h (__cns11643_from_ucs4p2c_tab): New declaration.
(ucs4_to_cns11643): Update.
* iconvdata/cns11643.c: Update to Unicode 3.2.
(__cns11643l2*_to_ucs4_tab, __cns11643_from_ucs4p0_tab,
__cns11643_from_ucs4p2_tab): Regenerated.
(__cns11643_from_ucs4p2c_tab): New array.
* iconvdata/EUC-TW.irreversible: Remove two entries.
2002-04-15 Bruno Haible <bruno@clisp.org>
* locale/C-translit.h.in: Update to Unicode 3.2.
Add <U2047>, <U205F>..<U2063>, <U2145>..<U2149>, <U2A74>..<U2A76>,
<U30A0>, <U3251>..<U325F>, <U32B1>..<U32BF>, <UFE00>..<UFE0F>.
2002-04-15 Bruno Haible <bruno@clisp.org>
2002-04-15 Bruno Haible <bruno@clisp.org>
* iconvdata/sjis.c (halfkana_to_ucs4): Remove array.
(BODY for FROM_LOOP): Optimize the JISX0201:GR to Unicode conversion.
2002-04-15 Bruno Haible <bruno@clisp.org>
* iconvdata/euc-jp.c (BODY for FROM_LOOP): When encountering an
invalid input (e.g. a byte > 0x80 followed by a byte < 0x80), skip
always one byte, not 0 bytes in some cases and 2 bytes in others.
* iconvdata/tst-table-from.c (main): Correct the usage message.
2002-04-19 Isamu Hasegawa <isamu@yamato.ibm.com>
* posix/regcomp.c (parse_expression): Fix incorrect error code.
(parse_dup_op): Fix error handling like "a{}".
(parse_bracket_exp): Add error handling.
(fetch_number): Add error handling for "a{<very_large_number>}".
2002-04-19 Isamu Hasegawa <isamu@yamato.ibm.com>
* posix/regcomp.c (parse_bracket_symbol): Add error handling
in case that the symbol name is too long.
(build_charclass): Handle [:lower:]/[:uppper:] correctly
in case of REG_ICASE.
2002-04-15 Bruno Haible <bruno@clisp.org>
* iconvdata/armscii-8.c (BODY for FROM_LOOP): Fix array access.
(BODY for TO_LOOP): Likewise.
* iconvdata/tcvn5712-1.c (from_ucs4): Map U+0309 to 0xB1.
* iconvdata/tst-table.sh: Add support for encodings which contain
precomposed Unicode characters, known to the iconv converter in both
directions but not listed in the charmap.
* iconvdata/IBM856.irreversible: New file.
* iconvdata/IBM922.irreversible: New file.
* iconvdata/IBM1132.irreversible: New file.
* iconvdata/IBM1133.irreversible: New file.
* iconvdata/IBM1160.irreversible: New file.
* iconvdata/IBM1161.irreversible: New file.
* iconvdata/IBM1163.irreversible: New file.
* iconvdata/IBM1164.irreversible: New file.
* iconvdata/ARMSCII-8.irreversible: New file.
* iconvdata/TCVN5712-1.precomposed: New file.
* iconvdata/tst-tables.sh: Add IBM856, IBM922, IBM1124, IBM1129,
IBM1160, IBM1161, IBM1132, IBM1133, IBM1162, IBM1163, IBM1164,
ARMSCII-8, TCVN5712-1.
* iconvdata/Makefile (distribute): Add IBM856.irreversible,
IBM922.irreversible, IBM1132.irreversible, IBM1133.irreversible,
IBM1160.irreversible, IBM1161.irreversible, IBM1163.irreversible,
IBM1164.irreversible, ARMSCII-8.irreversible, TCVN5712-1.precomposed.
2002-04-17 Jakub Jelinek <jakub@redhat.com>
* time/tst-mktime.c: Include <stdlib.h>. Use %d, not %ld format
for EVENING69. Include offsets in TZ environment variable.
2002-04-18 Ulrich Drepper <drepper@redhat.com>
* locale/programs/locfile.c (to_archive): New variable. To collect
data which has to be added to the locale archive.
(write_all_categories): Take new third parameter with locale name.
Unless no_archive flag set add new locale data to the archive
(write_locale_data): Unless no-archive flag set store generated data
in to_archive data structure instead of generation output file.
Add new parameter with locale category index.
* locale/programs/locfile.h: Add new parameters in declaractions of
write_all_categories and write_locale_data.
* locale/programs/localedef.c: Recognize --no-archive, --list-archive,
--add-to-archive, and --delete-from-archive options. Pass extra
parameter to write_all_categories.
* locale/programs/localedef.h: Add prototypes for functions in
locarchive.c.
* locale/locarchive.h: New file.
* locale/programs/locarchive.c: New file.
* locale/Makefile (distribute): Add programs/locarchive.c and
locarchive.h.
(localedef-modules): Add md5 and locarchive.
Add vpath to crypt subdir for md5.c.
* locale/programs/ld-address.c: Pass locale category ID as new second
parameter to write_locale_data.
* locale/programs/ld-collate.c: Likewise.
* locale/programs/ld-ctype.c: Likewise.
* locale/programs/ld-identification.c: Likewise.
* locale/programs/ld-measurement.c: Likewise.
* locale/programs/ld-messages.c: Likewise.
* locale/programs/ld-monetary.c: Likewise.
* locale/programs/ld-name.c: Likewise.
* locale/programs/ld-numeric.c: Likewise.
* locale/programs/ld-paper.c: Likewise.
* locale/programs/ld-telephone.c: Likewise.
* locale/programs/ld-time.c: Likewise.
* locale/simple-hash.c: Move compute_hashval function from here...
* locale/hashval.h: ...to here. New file.
* locale/simple-hash.h: Add prototype for compute_hashval.
* include/libintl.h: Minor cleanups.
* elf/reldep7.c: New file.
* elf/reldep7mod1.c: New file.
* elf/reldep7mod2.c: New file.
* elf/Makefile: Add rules to build and run reldep7.
2002-02-17 Andreas Schwab <schwab@suse.de>
* reldep7.c: New file.
* reldep7mod1.c: New file.
* reldep7mod2.c: New file.
* Makefile: Add rules to build and run reldep7.
2002-04-14 Jakub Jelinek <jakub@redhat.com>
* elf/dl-lookup.c (_dl_lookup_symbol): Move add_dependency call to
the end of the function. Pass original flags to recursive call if
add_dependency failed.
(_dl_lookup_versioned_symbol): Likewise.
2002-04-13 Jakub Jelinek <jakub@redhat.com>
* time/mktime.c (__mktime_internal): If year is 69, don't bail out
early, but check whether it overflowed afterwards.
* time/tst-mktime.c (main): Add new tests.
* debug/xtrace.sh: Fix program name in help message.
Patch by Roger Luethi <rl@hellgate.ch>.
* include/sys/socket.h: Declare __libc_sa_len_internal and define
SA_LEN macro to use it if not NOT_IN_libc.
* sysdeps/unix/sysv/linux/sa_len.c: Use INTDEF for __libc_sa_len.
* include/fcntl.h: Declare __open_internal and define __open and
__libc_open macros if not NOT_IN_libc.
* sysdeps/generic/open.c: Use INTDEF for __open.
* sysdeps/mach/hurd/open.c: Likewise.
* sysdeps/unix/sysv/aix/open.c: Likewise.
* sysdeps/unix/syscalls.list: Add __open_internal alias.
* sysdeps/generic/check_fds.c: Make sure newly opened file descriptor
has correct number.
* include/fcntl.h: Define __libc_fcntl macro if not NOT_IN_libc.
* sysdeps/mach/hurd/fcntl.c: Undefine __libc_fcntl as well.
* sysdeps/unix/sysv/aix/fcntl.c: Likewise.
* sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
* include/wctype.h: Declare __iswalpha_l_internal,
__iswdigit_l_internal, __iswspace_l_internal,
__iswxdigit_l_internal, and __iswctype_internal. Define
__iswalpha_l, __iswctype, __iswdigit_l, __iswspace_l, and
__iswxdigit_l macros if not NOT_IN_libc.
* wctype/iswctype.c: Use INTDEF for __iswctype.
* wctype/wcfuncs_l.c: Use INTDEF for all __iswXXX_l.
2002-04-13 Andreas Jaeger <aj@suse.de>
* sysdeps/i386/i486/bits/string.h (__strcspn_cg): Use only memory
as clobber to reduce register pressure.
(__strpbrk_cg): Likewise.
(__mempcpy_by4): Likewise.
(__strstr_cg): Likewise.
Add prototype for __memrchr.
2002-04-13 Ulrich Drepper <drepper@redhat.com>
* elf/do-lookup.h [!VERSIONED]: Add new parameter flags. Use it to
check whether the caller prefers getting the most recent version of
a symbol of the earliest version.
* elf/dl-lookup.c: Adjust all callers of do_lookup. Change
_dl_do_lookup to also take the new parameter and pass it on.
Change 'explicit' parameter of _dl_lookup_symbol and
_dl_lookup_versioned_symbol to flags. Adjust tests.
* sysdeps/generic/ldsodefs.h: Adjust prototypes.
* elf/dl-libc.c: Adjust all callers of _dl_lookup_symbol and
_dl_lookup_versioned_symbol.
* elf/dl-reloc.c: Likewise.
* elf/dl-runtime.c: Likewise.
* elf/dl-sym.c: Likewise.
* sysdeps/mips/dl-machine.h: Likewise.
* sysdeps/mach/hurd/chown.c: Use INTDEF for __chown.
* sysdeps/unix/sysv/aix/chown.c: Likewise.
* sysdeps/unix/grantpt.c: Use INTUSE for __chown calls.
* sysdeps/unix/sysv/linux/m68k/chown.c: Likewise.
* sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise.
* sysdeps/unix/sysv/linux/i386/chown.c: Use INTDEF2 to define
__chown_internal.
* sysdeps/unix/sysv/linux/s390/s390-32//chown.c: Likewise.
* intl/dcngettext.c [_LIBC]: Use INTUSE for __dcngettext.
* intl/dngettext.c [_LIBC] (DCNGETTEXT): Use INTUSE.
* intl/ngettext.c: Likewise.
* include/sys/socket.h: Declare __connect_internal and define
__connect macro if not NOT_IN_libc.
* sysdeps/mach/hurd/connect.c: Use INTDEF for __connect.
* sysdeps/unix/sysv/aix/connect.c: Likewise.
* sysdeps/unix/sysv/linux/connect.S: Add __connect_internal alias.
* include/unistd.h: Declare __close_internal and define __close macro
if not NOT_IN_libc.
* libio/libioP.h (JUMO0, JUMP1, JUMP2, JUMP3, WJUMP0, WJUMP1, WJUMP2,
WJUMP3): Add extra parenthesis to avoid expanding element names with
macors like __close.
* sysdeps/unix/syscalls.list: Add __close_internal alias.
* include/unistd.h: Declare __dup2_internal and define __dup2 macro
if not NOT_IN_libc.
* sysdeps/mach/hurd/dup2.c: Use INTDEF for __dup2.
* sysdeps/posix/dup2.c: Use INTDEF for __dup2.
* sysdeps/unix/syscalls.list: Add __dup2_internal alias.
* include/unistd.h: Declare __fork_internal and define __fork macro
if not NOT_IN_libc.
* sysdeps/mach/hurd/fork.c: Use INTDEF for __fork.
* sysdeps/unix/sysv/aix/fork.c: Likewise.
* sysdeps/unix/sysv/linux/syscalls.list: Add __fork_internal alias.
* include/stdio_ext.h: Declare __fsetlocking_internal and define
__fsetlocking macro to use it if not NOT_IN_libc.
* libio/__fsetlocking.c: Use INTDEF for __fsetlocking.
* libio/__fbufsize.c: Correct copyright.
* libio/__flbf.c: Likewise.
* libio/__fpending.c: Likewise.
* libio/__fpurge.c: Likewise.
* libio/__freadable.c: Likewise.
* libio/__freading.c: Likewise.
* libio/__fsetlocking.c: Likewise.
* libio/__fwritable.c: Likewise.
* libio/__fwriting.c: Likewise.
* include/stdio.h: Declare __asprintf_internal and define __asprintf
macro to use it if not NOT_IN_libc.
* stdio-common/asprintf.c: Use INTDEF for __asprintf.
* include/mntent.h: Declare __setmntent_internal,
__getmntent_r_internal, __endmntent_internal. Define __setmntent,
__getmntent_r, and __endmntent macros to use these functions if not
NOT_IN_libc.
* misc/mntent_r.c: Use INTDEF for __setmntent, __getmntent_r, and
__endmntent.
* include/math.h: Declare __finite_internal, __finitef_internal, and
__finitel_internal. Redefine isfinite macro if in libc or libm using
these functions.
* sysdeps/generic/s_ldexp.c: Use INTUSE for __finite calls.
* sysdeps/generic/s_ldexpf.c: Use INTUSE for __finitef calls.
* sysdeps/generic/s_ldexpl.c: Use INTUSE for __finitel calls.
* sysdeps/i386/fpu/s_finite.S: Define _internal alias.
* sysdeps/i386/fpu/s_finitef.S: Likewise.
* sysdeps/i386/fpu/s_finitel.S: Likewise.
* sysdeps/ieee754/dbl-64/s_finite.c: Likewise.
* sysdeps/ieee754/flt-32/s_finitef.c: Likewise.
* sysdeps/ieee754/ldbl-128/s_finitel.c: Likewise.
* sysdeps/ieee754/ldbl-96/s_finitel.c: Likewise.
* include/fcntl.h: Declare __fcntl_internal. Define __fcntl macro
to use this function if not NOT_IN_libc.
* libio/iofdopen.c (_IO_fcntl): Use INTUSE.
* sysdeps/generic/fcntl.c: Use INTDEF for __fcntl.
* sysdeps/mach/hurd/fcntl.c: Likewise.
* sysdeps/unix/sysv/aix/fcntl.c: Likewise.
* sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
* include/argz.h: Declare __argz_count_internal and
__argz_stringify_internal.
* intl/l10nflist.c [_LIBC]: Use INTUSE for __argz_count and
__argz_stringify.
* string/argz-count.c: Use INTDEF for __argz_count.
* string/argz-stringify.c: Use INTDEF for __argz_stringify.
* include/stdlib.h: Declare __cxa_atexit_internal and define
__cxa_atexit macro if not NOT_IN_libc.
* stdlib/cxa_atexit.c: Use INTDEF for __cxa_atexit.
* dlfcn/Makefile: Define NOT_IN_libc when compiling modcxaatexit.c.
* assert/assert.c: Use INTDEF for __assert_fail.
* assert/__assert.c: Use INTUSE for call to __assert_fail.
* include/assert.h: Declare __assert_fail_internal.
2002-04-08 kaz Kojima <kkojima@rr.iij4u.or.jp>
* elf/elf.h: Define R_SH_TLS_xxx macros.
* elf/rtld.c: Remove an extra parenthesis.
* elf/tls-macros.h: Define SH version TLS_LE, TLS_IE, TLS_LD and
TLS_GD macros.
* sysdeps/generic/dl-tls.c: Add a missing semi-colon.
* sysdeps/sh/dl-lookupcfg.h: New file.
* sysdeps/sh/dl-tls.h: New file.
* sysdeps/sh/dl-machine.h (elf_machine_type_class): Set
ELF_RTYPE_CLASS_PLT also for the three TLS relocations.
(elf_machine_rela): Handle R_SH_TLS_DTPMOD32, R_SH_TLS_DTPOFF32 and
R_SH_TLS_TPOFF32 relocations.
2002-04-08 Ulrich Drepper <drepper@redhat.com>
* cppflags-iterator.mk (cpp-srcs-left): Define NOT_IN_libc instead
of NOT_IN_LIBC.
* include/libintl.h: Test for NOT_IN_libc not NOT_IN_LIBC.
* include/stdlib.h: Likewise.
2002-04-08 Jakub Jelinek <jakub@redhat.com>
* elf/Makefile (CFLAGS-.os): Define NOT_IN_libc and IS_IN_rtld
instead of _RTLD_LOCAL.
* elf/dl-dst.h: Use IS_IN_rtld instead of _RTLD_LOCAL.
* include/unistd.h: Likewise.
* sysdeps/generic/ldsodefs.h: Likewise.
* stdio-common/_itoa.h (_itoa_word): Only use internal digit arrays
if in libc or ld.so.
* include/stdlib.h: For libc itself replace MB_CUR_MAX definition
with one accessing the locale data structures directly.
* stdio-common/printf-prs.c: Include localeinfo.h for new
MB_CUR_MAX definition.
2002-04-08 Ulrich Drepper <drepper@redhat.com>
* Makeconfig (CPPFLAGS): Also add CPPFLAGS-<basename> where <basename>
is the name of the source file without extension.
* Makefile (distribute): Add cppflags-iterator.mk.
* cppflags-iterator.mk: New file.
* extra-lib.mk: For the sources of the library run
cppflags-iterator.mk.
* include/libintl.h: Declare __dcgettext_internal and
_libc_intl_domainname_internal. Define __dcgettext using these
two symbols if used in libc itself.
* argp/argp-help.c: Define dgettext using __dcgettext_internal and
_libc_intl_domainname_internal.
* argp/argp-parse.c: Likewise.
* intl/dcgettext.c (__dcgettext): Use INTDEF to define alias.
* intl/dgettext.c: Call __dcgettext_internal instead of __dcgettext.
* intl/gettext.c: Likewise.
* locale/SYS_libc.c (_libc_intl_domainname): Use INTDEF to define
alias.
* posix/regcomp.c (gettext): Use __dcgettext_internal instead of
__dcgettext.
* posix/regex_internal.c (gettext): Likewise.
<mach/machine/alpha_instruction.h>.
(_hurd_setup_sighandler): Take proper arguments for current decls.
Update code to use _hurdsig_catch_fault.
Use `callsys' instruction instead of `call_pal'.
* sysdeps/mach/hurd/alpha/intr-msg.h: New file.
* sysdeps/mach/alpha/sysdep.h: Include <mach/alpha/asm.h>.
(ALIGN, at, AT, fp): New macros.
2002-04-06 Ulrich Drepper <drepper@redhat.com>
* iconvdata/tcvn5712-1.c (MAX_NEEDED_INPUT): Define for from
direction. Reported by H . J . Lu <hjl@lucon.org>.
* intl/tst-gettext.sh: Set GCONV_PATH and LOCPATH to values for the
test just before the test runs.
* intl/tst-translit.sh: Likewise.
* intl/tst-codeset.sh: Likewise.
2002-04-05 Jakub Jelinek <jakub@redhat.com>
* time/mktime.c (__mktime_internal): Move check for year < 70 below
all variable declarations.
2002-04-04 Andreas Schwab <schwab@suse.de>
* sysdeps/unix/sysv/linux/ia64/pipe.S: Don't overwrite r8 on error.
* sysdeps/unix/sysv/linux/x86_64/time.c: Removed.
* sysdeps/mips/dec/bits/endian.h: Removed since arch is not supported.
2002-04-04 Andreas Jaeger <aj@suse.de>
* sysdeps/x86_64/fpu/e_sqrt.c: New file.
* sysdeps/x86_64/fpu/e_sqrtf.c: New file.
* sysdeps/x86_64/fpu/s_fabs.c: New file.
* sysdeps/x86_64/fpu/s_fabsf.c: New file.
* sysdeps/x86_64/fpu/s_fabsl.c: New file.
* sysdeps/unix/sysv/linux/x86_64/time.S: New file.
* sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: New file.
* sysdeps/unix/sysv/linux/x86_64/gettimeofday.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/time.S: Removed.
* configure.in: Handle all mips entries the same.
* sysdeps/mips/dec/bits/endian.h: Removed since arch is not
supported.
* sysdeps/mips/mips3/*: Likewise.
* sysdeps/mips/p40/bits/endian.h: Likewise.
2002-04-04 Ulrich Drepper <drepper@redhat.com>
* misc/dirname.c (dirname): Ignore trailing slashes at end of
non-null result [PR libc/2600].
* misc/tst-dirname.c: Add more tests.
2002-04-03 Ulrich Drepper <drepper@redhat.com>
* locale/programs/charmap.c (charmap_read): If the charmap doesn't
define a code_set_name provide one based on the filename.
* malloc/hooks.c: Define weak_variable correctly for _LIBC.
2001-12-28 Andreas Jaeger <aj@suse.de>
* time/mktime.c (__mktime_internal): Check for year < 70
[PR libc/2738].
* sysdeps/generic/w_lgamma.c: Initialized local_signgam.
* sysdeps/generic/w_lgammaf.c: Likewise.
* sysdeps/generic/w_lgammal.c: Likewise [PR libc/2854].
* debug/catchsegv.sh (exval): Quote [ in pattern [PR libc/2902].
Adjust for new output format of the backtrace functions.
* misc/syslog.c (vsyslog): Only use cleanup handler if
_LIBC_REENTRANT is defined [PR libc/2924].
* sysdeps/s390/s390-64/bits/byteswap.h: Likewise [PR libc/2757].
* sunrpc/rpc_svcout.c (write_real_program): Write "result, "
parameter if mtflag. Patch by <jeongyun@innovay.com>.
* sysdeps/unix/sysv/linux/x86_64/swapcontext.S: New file.
* sysdeps/unix/sysv/linux/x86_64/getcontext.S: New file.
* sysdeps/unix/sysv/linux/x86_64/setcontext.S: New file.
* sysdeps/unix/sysv/linux/x86_64/ucontext_i.h: New file.
2002-04-03 Ulrich Drepper <drepper@redhat.com>
* sunrpc/rpc_svcout.c (printif): Remove third parameter. It was
always "&". Adjust callers.
Add "_" prefix to several generated definitions.
Patch by paul@serice.net [PR libc/3158].
* libio/bug-ungetwc1.c: New file.
* libio/Makefile (tests): Add bug-ungetwc1.
* libio/fileops.c (_IO_new_file_close_it): Only call _IO_do_flush
if stream was last used for writing.
2002-04-02 Jakub Jelinek <jakub@redhat.com>
* inet/ether_ntoh.c (__nss_ethers_lookup): Add internal_function.
* inet/ether_hton.c (__nss_ethers_lookup): Likewise.
* inet/getnetgrent_r.c (__nss_netgroup_lookup): Likewise.
* sunrpc/netname.c (__nss_publickey_lookup): Likewise.
* sunrpc/publickey.c (__nss_publickey_lookup): Likewise.
2002-03-30 Jakub Jelinek <jakub@redhat.com>
* elf/dynamic-link.h (elf_get_dynamic_info): Don't abort on unknown
dynamic tags.
2002-03-29 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/fpu/s_fabs.S: New file.
* sysdeps/i386/fpu/s_fabsf.S: New file.
* sysdeps/i386/fpu/s_fabsl.S: New file.
* sysdeps/sparc/sparc64/fpu/s_fabs.c: New file.
* sysdeps/sparc/sparc64/fpu/s_fabsf.c: New file.
* sysdeps/sparc/sparc64/fpu/s_fabsl.c: New file.
2002-04-02 Ulrich Drepper <drepper@redhat.com>
* rt/tst-shm.c (do_test): Add one more test for size of shared
memory object.
2002-03-29 Wolfram Gloger <wg@malloc.de>
* malloc/malloc.c: Add short description and prototypes for
malloc_get_state, malloc_set_state and posix_memalign, for
consistency and to avoid warnings with -Wstrict-prototypes.
Reported by Andreas Jaeger <aj@suse.de>.
2002-04-02 Ulrich Drepper <drepper@redhat.com>
* po/gl.po: Update from translation team.
MACH_MSG_TYPE_INTEGER_T -> integer_t in sizeof.
Use a union rather than casts to compare mach_msg_type_t as int.
2002-03-25 Roland McGrath <roland@frob.com>
* hurd/hurdchdir.c (_hurd_change_directory_port_from_name): Don't
check off the end of NAME when it's shorter than 2 chars.
Reported by Ognyan Kulev <ogi@fmi.uni-sofia.bg>.
2002-03-17 Roland McGrath <roland@frob.com>
* sysdeps/mach/hurd/i386/sys/io.h: New file.
* sysdeps/mach/hurd/i386/ioperm.c: New file.
* sysdeps/mach/hurd/i386/Dist: Add them.
* sysdeps/mach/hurd/i386/Versions
(libc: GLIBC_2.2.6): New set, add ioperm.
* sysdeps/mach/configure.in: New check to set HAVE_I386_IO_PERM_MODIFY.
(mach_interface_list): Check for mach_i386.defs.
* config.h.in (HAVE_I386_IO_PERM_MODIFY): #undef it.
* sysdeps/mach/configure: Regenerated.
2002-03-25 Andreas Jaeger <aj@suse.de>
* iconv/gconv_simple.c (ucs4le_internal_loop_single): Handle
little endian.
Reported by Artur Zaprzala <zybi@talex.com.pl>.
2002-03-22 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/bits/nan.h: New file. Copy from generic one with
changes for NaNs on MIPS.
Patch by Hartvig Ekner <hartvige@mips.com>.
2002-03-21 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/x86_64/bits/sigcontext.h (struct
_fpstate): Add separate struct for x86-64.
* sysdeps/unix/sysv/linux/x86_64/sys/user.h (struct
user_fpregs_struct): Change member names to follow kernel.
2002-03-20 Ulrich Drepper <drepper@redhat.com>
* nis/ypclnt.c (yp_all): Remove the hack introduced on 1998-09-29.
Correctly close the UDP connection right away [PR libc/3120].
2002-03-17 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/fpu/fraiseexcpt.c (__feraiseexcept): Set cause bits.
* sysdeps/mips/fpu/fgetexcptflg.c (__fegetexceptflag): Add comment.
* sysdeps/mips/fpu/fclrexcpt.c (__feclearexcept): Clear also cause
bits.
* sysdeps/mips/fpu/fenv_libc.h (CAUSE_MASK): New.
(CAUSE_SHIFT): New.
Patch by Hartvig Ekner <hartvige@mips.com>.
* sysdeps/generic/unwind-dw2-fde-glibc.c: Add prototypes.
* sysdeps/generic/unwind-pe.h: Likewise.
* libio/iofdopen.c (_IO_new_fdopen): Pass parameter of correct
type to _IO_setb.
* libio/stdio.c (AL2): Define variant when visibility attribute is
not supported.
* include/libc-symbols.h (_INTVARDEF): Define variant when
visibility attribute is not supported.
2002-03-15 H.J. Lu <hjl@gnu.org>
Ulrich Drepper <drepper@redhat.com>
* configure.in: Check for availability of
init_array/fini_array/preinit_array handling in binutils.
* config.h.in (HAVE_INITFINI_ARRAY): New macro.
* config.make.in (have-initfini-array): New variable.
* stdio-common/tst-printf.c (main): Comment out one test which
checked the compiler's ability to fold floating-point constants
but not really printf.
(rfg3): Make s const.
* stdio-common/tst-printf.sh: Adjust for removed test.
2002-03-14 Ulrich Drepper <drepper@redhat.com>
* elf/dl-minimal.c (malloc): Declare _end as hidden.
(__errno_location): New function. Declare errno as hidden.
* elf/rtld.c (_dl_argc): Define as hidden.
(_dl_skip_args): Define as hidden.
(_begin, _end): Declare as hidden.
* sysdeps/generic/dl-sysdep.c (_end): Declare as hidden.
* sysdeps/generic/entry.h (_start): Declare as hidden.
* sysdeps/generic/ldsodefs.h (_dl_argc): Declare as hidden.
* sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Declare
_dl_runtime_resolve and _dl_runtime_profile as hidden.
(RTLD_START): Use GOTOFF to access _dl_skip_args and _dl_fini.
* Makeconfig (%.v.i, %.v): New implicit rules.
(preprocess-versions): Variable removed.
($(common-objpfx)shlib-versions.v.i): New target giving just the
shlib-versions input files as dependencies.
($(common-objpfx)soversions.i): Depend on that instead of the input
files. Use it as input instead of using a pipeline.
(postclean-generated): Append soversions.i, shlib-versions.v, and
shlib-versions.v.i here.
* Makerules ($(common-objpfx)Versions.def.v.i): New target giving just
the Versions.def input files as dependencies.
($(common-objpfx)Versions.v.i): Likewise for Versions files.
($(common-objpfx)Versions.all): Depend on that instead of the input
files. Use it as input instead of using a pipeline.
($(common-objpfx)sysd-versions): Likewise with Versions.v.i.
(postclean-generated): Append those .v and .v.i files here.
2002-03-14 Jakub Jelinek <jakub@redhat.com>
* locale/broken_cur_max.c (__ctype_get_mb_cur_max): Use nl_langinfo.
* locale/Versions (_nl_current_LC_COLLATE, _nl_current_LC_CTYPE):
Remove.
2002-03-14 Jakub Jelinek <jakub@redhat.com>
* sysdeps/generic/mp_clz_tab.c: New file.
* sysdeps/i386/mp_clz_tab.c: New file.
* sysdeps/hppa/mp_clz_tab.c: New file.
* sysdeps/powerpc/mp_clz_tab.c: New file.
* stdlib/Makefile (aux): Revert last patch.
* math/Makefile (gmp-objs): Likewise.
2002-03-13 Paul Eggert <eggert@twinsun.com>
* time/strftime.c: Comment fixes for references to obsolescent
standards, In most cases the simplest fix is to remove the
confusing comments. Cross-referencing all the standards properly
is a bit of a pain, and it should be enough to put that info in
the documentation as I did in my recent time.texi patch.
2002-03-13 Paul Eggert <eggert@twinsun.com>
* manual/time.texi (Formatting Calendar Time):
ISO C99 also specifies the E and O modifiers.
%P is a GNU extension, and is not in ISO C99.
Mention that %r is equivalent to %I:%M:%S %p in the POSIX locale.
%T is also in ISO C99.
The RFC 822 example is not valid in arbitrary locales.
Reword the POSIX.2 wording slightly, to make it a bit clearer
that POSIX.2 formats are also supported by later POSIX versions.
If a format was introduced in ISO C99 it is also required by
POSIX.1-2001.
2002-03-13 Wolfram Gloger <wg@malloc.de>
* malloc/malloc.c (sYSMALLOc): Don't change brk if mmap failed.
2002-03-02 Andreas Schwab <schwab@suse.de>
* stdio-common/vfprintf.c (process_arg): Fix decimal format with
'h' flag and positional arg.
* stdio-common/tst-printf.c (rfg3): New function to test
positional arguments.
(main): Fix some warnings.
2002-03-13 Jakub Jelinek <jakub@redhat.com>
* elf/dl-minimal.c (_itoa): Use _itoa_lower_digits_internal if SHARED.
* elf/dl-reloc.c (_dl_reloc_bad_type): Likewise.
2002-03-13 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/ttyname.c: Comment out definition and
use of __ttyname.
* posix/regcomp.c (__re_error_msgid): Renamed from re_error_msgid.
Define as hidden.
(__re_error_msgid_idx): Renamed from re_error_msgid_idx. Define as
hidden. Change all users of these variables.
* posix/regex_internal.h (__re_error_msgid): Renamed from
re_error_msgid. Declare as hidden.
(__re_error_msgid_idx): Renamed from re_error_msgid_idx. Declare as
hidden.
* stdio-common/reg-printf.c (__printf_arginfo_table): Define as hidden.
(__printf_function_table): Likewise.
* stdio-common/printf-parse.h (__printf_arginfo_table): Declare as
hidden.
(__printf_function_table): Likewise.
* nscd/nscd_proto.h: Declare __nss_not_use_nscd_passwd,
__nss_not_use_nscd_group, and __nss_not_use_nscd_hosts as hidden.
* nss/XXX-lookup.c (DATABASE_NAME_SYMBOL): Define as hidden.
* nss/nsswitch.c: Declare _nss_*_database as hidden.
* stdlib/wctomb.c (__no_r_state): Declare as hidden.
* stdlib/mbtowc.c (__no_r_state): Define as hidden.
2002-02-25 Paul Eggert <eggert@twinsun.com>
* timezone/Makefile (tzbases): Move systemv from here...
(tzlinks): to here, since the entries in systemv were all changed
from Zone to Link lines in tz-2001a. Bug reported (and patch
tested) by Peter Breitenlohner.
2002-03-11 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/elf/configure.in: Fix comment.
* sysdeps/sparc/sparc64/configure.in: New.
* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_load_address): Fix
if .dynamic comes before .got.
* config.h.in (SPARC64_DYNAMIC_BEFORE_GOT): Add.
* sysdeps/sparc/sparc64/hp-timing.h (HP_TIMING_DIFF,
HP_TIMING_ACCUM): Fix typos.
* string/strfry.c: Add some more randomness to the seed.
Patch by James A Morrison <ja2morri@student.math.uwaterloo.ca>.
Patch by James Antill <james@anqd.org> [PR libc/2787].
2002-03-11 Ulrich Drepper <drepper@redhat.com>
* po/es.po: Update from translation team.
* po/fr.po: Likewise.
* stdio-common/tfformat.c (sprint_doubles): A test for %F format.
* stdio-common/printf_fp.c (__printf_fp): Correct check for %F format
when determining type of format.
Patch by James Antill <james@and.org> [PR libc/2787].
2002-03-04 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/bsd/ftime.c (ftime): Don't return 1000 in millitm.
2002-03-11 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/s390/ldd-rewrite.sed: Fix for bi-arch
support.
Patch by Susanne Oberhauser <froh@SuSE.de>.
2002-03-11 Ulrich Drepper <drepper@redhat.com>
* gmon/Makefile (elide-routines.os): Add bb_init_func and bb_exit_func.
They were never exported anyway.
* gmon/gmon.c (_gmonparam): Add attribute_hidden.
* gmon/sys/gmon.h: Remove declaration of _gmonparam. It wasn't
exported.
* include/sys/gmon.h: Declare _gmonparam.
* sysdeps/unix/sysv/linux/i386/getdents64.c: Don't define compatibility
symbols for getdents64. They were never exported.
Reported by Jon Arney <jarney1@cox.net>.
2002-02-23 Roland McGrath <roland@frob.com>
* hurd/hurd/threadvar.h (__hurd_threadvar_location): Add __THROW to
declaration.
(__hurd_errno_location): Function removed.
2002-03-03 Andreas Jaeger <aj@suse.de>
* elf/nodlopenmod2.c: Provide prototype to avoid warning.
* elf/tst-tlsmod1.c: Likewise.
* posix/regcomp.c: Get regex.h from include dir for internal
prototypes.
* sysdeps/unix/sysv/linux/init-first.c: Move __init_misc prototype
to libc-internal.h and include it.
* include/libc-internal.h: Add __init_misc.
* misc/init-misc.c: Include libc-internal.h for prototypes.
* sysdeps/wordsize-32/divdi3.c: Add prototypes to avoid warnings.
* misc/error.c [_LIBC]: Include libioP.h for prototype of
_IO_putc_internal.
2002-02-27 Jakub Jelinek <jakub@redhat.com>
* sysdeps/alpha/dl-machine.h (elf_machine_load_address, RTLD_START):
Work around an Alpha gas bug.
2002-02-27 Ulrich Drepper <drepper@redhat.com>
* catgets/open_catalog.c (__open_catalog): Fix typo in code which
uses read to load the catalog.
Patch by Andy Isaacson <adi@unlimitedscale.com> [PR libc/3011].
inside libc itself. Use INTDEF and INTDEF2 to define appropriate
2002-02-26 Ulrich Drepper <drepper@redhat.com>
* stdio-common/vfscanf.c (_IO_vfwscanf): Always use ungetc, never
ungetwc. It's a macro.
* libio/tst-swscanf.c (do_test): Adjust for now fixed wscanf
implementation.
Reported by Jason Merrill <jason@redhat.com>.
2002-02-25 Jakub Jelinek <jakub@redhat.com>
* libio/iofopen.c (__fopen_maybe_mmap): Set the initial
position to fp->_offset if it is set.
* stdio-common/Makefile (tests): Add tst-fdopen.
* stdio-common/tst-fdopen.c: New test.
2002-02-25 Jakub Jelinek <jakub@redhat.com>
* libio/fileops.c (_IO_file_xsgetn_mmap): Handle reading from backup.
* stdio-common/tst-ungetc.c (main): Add another test.
* elf/sprof.c (load_profdata): If do_test provide information as
to why loading failed.
* elf/dl-profile.c (_dl_start_profile): Initialize all of
hist_hdr.dimen.
* sysdeps/mach/hurd/setpriority.c [POLICY_TIMESHARE_BASE_COUNT]:
Use task_policy in place of task_priority.
* sysdeps/generic/bits/mman.h
(MS_ASYNC, MS_SYNC, MS_INVALIDATE): New macros.
* sysdeps/mach/msync.c: New file.
* sysdeps/mach/powerpc/syscall.S: New file.
* mach/msg.c [MACH_MSG_OVERWRITE]
(__mach_msg_trap, __mach_msg_overwrite): New functions.
* mach/Versions (libc: GLIBC_2.0): Add mach_msg_overwrite and __ name.
* sysdeps/mach/configure.in: Check for clock.defs to put into
mach_interface_list.
* sysdeps/mach/configure: Regenerated.
* mach/Makefile (mach-machine): New variable, set from $(base-machine).
($(objpfx)mach-syscalls.mk): Use it in place of $(base-machine).
($(mach-syscalls:%=$(objpfx)%.S) static pattern rule):
Use <mach/machine/syscall_sw.h> instead of <sysdep.h>.
(mach-shortcuts): Add device_read_overwrite_request,
device_read_overwrite, vm_read_overwrite, thread_switch.
* configure.in (base_machine): Set to $machine by default.
* configure: Regenerated.
or <machine/ndr_def.h> and add -DNDR_DEF_HEADER=... to DEFINES.
* sysdeps/mach/configure: Regenerated.
* mach/mach_init.c [NDR_DEF_HEADER]: #include it.
* hurd/hurdfault.c (_hurdsig_fault_init): Add a cast.
* hurd/hurd/signal.h: Include <setjmp.h> for `jmp_buf' decl.
* mach/msgserver.c (__mach_msg_server_timeout) [! MACH_RCV_LARGE]:
Double MAX_SIZE and don't retry on MACH_RCV_TOO_LARGE.
* sysdeps/mach/hurd/times.c
[NO_CREATION_TIME] (startup_time): New static variable.
[NO_CREATION_TIME] (times_init): New static function in __libc_subinit.
(__times) [NO_CREATION_TIME]: Use startup_time in lieu of task
creation_time from task_basic_info.
(__times): Use __gettimeofday instead of __host_get_time.
* hurd/intr-msg.c (_hurd_intr_rpc_mach_msg) [! MACH_MSG_TYPE_BIT]:
Use untyped Mach IPC message format.
* hurd/catch-exc.c: Include <assert.h>, missing from last change.
_S_catch_exception_raise_state_identity,
_hurdsig_fault_catch_exception_raise_state,
_hurdsig_fault_catch_exception_raise_state_identity.
* mach/shortcut.awk: Don't apply the /^}$/ rule when $proto == "".
* sysdeps/mach/getsysstats.c (__get_avphys_pages) [HOST_VM_INFO]: Use
__host_info with HOST_VM_INFO flavor instead of __vm_statistics.
* sysdeps/mach/hurd/getpriority.c [TASK_SCHED_TIMESHARE_INFO]: Find
`base_priority' in PIP->timeshare_base_info instead of PIP->taskinfo.
* sysdeps/mach/hurd/dl-sysdep.c [FMH]: Define for i386 only.
(fmh, unfmh): Define these functions only #if FMH. Otherwise define
them as no-op macros.
[FMH] (ELF_MACHINE_USER_ADDRESS_MASK): Redefine it to zero.
(__mmap): Uncomment uses of ELF_MACHINE_USER_ADDRESS_MASK.
* sysdeps/powerpc/dl-machine.h
(ELF_MACHINE_USER_ADDRESS_MASK): New macro.
Use untyped Mach IPC message format.
* sysdeps/mach/hurd/ioctl.c (__ioctl) [! MACH_MSG_TYPE_BIT]: Handle
Handle untyped Mach IPC message formats.
* hurd/catch-exc.c (_S_catch_exception_raise) [EXC_MASK_ALL]:
Expect different argument conventions when this is defined.
[EXC_MASK_ALL] (_S_catch_exception_raise_state): New stub function.
[EXC_MASK_ALL] (_S_catch_exception_raise_state_identity): Likewise.
* hurd/hurdfault.c: Likewise for _hurdsig_fault_catch_exception_*.
[NDR_CHAR_ASCII] (mig_reply_header_t): #define as mig_reply_error_t
for OSF Mach variant.
(faulted): Use mig_reply_error_t for REPLY.
(_hurdsig_fault_init) [EXC_MASK_ALL]: Use EXCEPTION_STATE_IDENTITY
in __thread_set_exception_ports call.
(_hurdsig_fault_init) [MACH_PORT_RECEIVE_STATUS]: Use
__mach_port_set_attributes in place of __mach_port_set_qlimit.
* sysdeps/mach/powerpc/sysdep.h (_MACH_MACHINE_ASM_H): Define this
before include <sysdeps/mach/sysdep.h>, to inhibit <mach/machine/asm.h>
on Darwin, which includes bogons.
* sysdeps/mach/configure.in: Check for host_page_size RPC to define it.
* mach/mach_init.c (__mach_init) [HAVE_HOST_PAGE_SIZE]: Use
host_page_size instead of vm_statistics.
to ensure a sane installation.
(mach_interface_list): Define this variable by checking for .defs
files found in various variants.
* configure.in (mach_interface_list): AC_SUBST this.
* config.make.in (mach-interface-list): New substituted variable.
* mach/Makefile (user-interfaces): Define this using the value
of $(mach-interface-list) instead of mach, mach4.
Updated other references to mach_interface to use it as well.
* sysdeps/mach/powerpc/machine-lock.h: Avoid multi-line strings.
* mach/msgserver.c [NDR_CHAR_ASCII] (mig_reply_header_t): #define as
mig_reply_error_t for OSF Mach variant.
* mach/Makefile (routines): Remove bootprivport.
* mach/bootprivport.c: File removed. It has never been used.
* mach/msg-destroy.c (__mach_msg_destroy) [MACH_MSG_PORT_DESCRIPTOR]:
Grok the OSF flavor of message format.
(mach_msg_destroy_port): For MAKE_SEND and
MAKE_SEND_ONCE rights, create an destroy a right to ensure proper
no-senders notification.
2002-02-06 Roland McGrath <roland@frob.com>
* hurd/Versions (libc: GLIBC_2.0): Move cthread_fork, cthread_detach
to here if 2.0 compatibility enabled ...
(libc: GLIBC_2.1.3): ... from here.
2002-02-14 Ulrich Drepper <drepper@redhat.com>
* stdlib/test-a64l.c (tests): Add more test cases.
* sunrpc/rtime.c (rtime): Change type of thetime to uint32_t.
Reported by Walter Harms <WHarms@bfs.de>.
2002-02-11 Jes Sorensen <jes@trained-monkey.org>
* sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Add sc_flag bit
definitions for struct sigcontext.
Suggested by David Mosberger-Tang.
* elf/dl-close.c (remove_slotinfo): New function. Handles everything
for removing reference of module in slotinfo list.
(_dl_close): Use remove_slotinfo.
* sysdeps/generic/dl-tls.c: General pretty printing.
(oom): Define only if SHARED.
(_dl_next_tls_modid): Correct starting point for the case we assume
there is a gap. Add missing instruction grouping (doh!). Correct
tests for reaching maximum index.
* elf/Makefile: Add rules to build and run tst-tls7.
* elf/tst-tls7.c: New file.
* elf/tst-tlsmod3.c: New file.
* elf/tst-tlsmod1.c: Move #include "tls-macros.h" instead #ifdef
USE_TLS.
* elf/tst-tlsmod2.c: Likewise.
* elf/dl-close.c (_dl_close): When closing an object using TLS
either decrement dl_tls_max_dtv_idx or set dl_tls_dtv_gaps to
true. Increment dl_tls_generation only if we closed any TLS-using
object.
* elf/tst-tls6.c: New file.
* elf/Makefile: Add rules to build and run tst-tls6.
* po/da.po: Update from translation team.
* locale/categories.def: Fix typo [PR libc/2948].
* po/Makefile (BROKEN_LINGUAS): Works with current gettext
[PR libc/2949].
* locale/iso-4217.def: Update from official version [PR libc/2950].
* glibcbug.in: Honor TMPDIR [PR libc/2951].
* locale/programs/ld-collate.c (collate_finish): Bail out with a
message if input is too confusion instead of using assert.
(collate_read): Don't crash on unknown symbol [PR libc/2952].
Patches by Alastair McKinstry <alastair@pdd.3com.com>.
2002-02-13 Ulrich Drepper <drepper@redhat.com>
* elf/dl-close.c (_dl_close): Implement freeing entries in the
slotinfo array.
(free_mem): Free memory for the slotinfo array if possible.
2002-02-12 Ulrich Drepper <drepper@redhat.com>
* sysdeps/generic/dl-tls.c (TLS_DTV_UNALLOCATED): Renamed from
TLS_DTV_UNALLOCATE.
(oom): New function.
(_dl_next_tls_modid): Rewrite to handle dl_tls_dtv_slotinfo_list.
(_dl_determine_tlsoffset): Likewise.
(_dl_allocate_tls): Likewise.
(__TLS_GET_ADDR): Define if not already defined.
(_dl_tls_symaddr): New function.
(allocate_and_init): New function.
(__tls_get_addr): Actually implement handling of generation counter
and deferred allocation.
* sysdeps/generic/ldsodefs.h (_rtld_global): Remove _dl_initimage_list,
add _dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and
_dl_tls_generation.
Define TLS_SLOTINFO_SURPLUS and DTV_SURPLUS.
Declare _dl_tls_symaddr.
* sysdeps/i386/dl-tls.h: Disable __tls_get_addr handling unless
SHARED.
* include/link.h (struct link_map): Remove l_tls_nextimage and
l_tls_previmage.
* elf/dl-sym.c (_dl_sym): After successful lookup call _dl_tls_symaddr
instead of DL_SYMBOL_ADDRESS for STT_TLS symbols.
(_dl_vsym): Likewise.
* elf/rtld.c (_dl_start_final): Adjust initdtv initialization for new
layout.
(dl_main): Allow PT_TLS be present for empty segment. Remove
nextimage list handling. Instead add all modules using TLS to
dl_tls_dtv_slotinfo_list.
* elf/dl-open.c (dl_open_worker): After successfully loading all
objects add those with TLS to the dl_tls_dtv_slotinfo_list list.
* elf/dl-load.c (_dl_map_object_from_fd): If PT_TLS entry is for an
empty segment don't do anything. Remove handling of initimage list.
* elf/Versions [ld] (GLIBC_2.0): Add __libc_memalign.
(GLIBC_PRIVATE): Add _dl_tls_symaddr.
* elf/dl-minimal.c: Define __libc_memalign.
* elf/dl-support.c: Remove _dl_initimage_list. Add
_dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and
_dl_tls_generation.
* include/stdlib.h: Declare __libc_memalign.
* elf/Makefile: Add rules to build and run tst-tls4 and tst-tls5.
* elf/tst-tls4.c: New file.
* elf/tst-tls5.c: New file.
* elf/tst-tlsmod2.c: New file.
* elf/tls-macros.h: asms using ___tls_get_addr destroy %ecx and %edx.
* elf/tst-tlsmod1.c: Don't define variables unles USE_TLS.
* elf/tst-tls1.c: Use test-skeleton.c.
* elf/tst-tls2.c: Likewise.
* elf/tst-tls3.c: Likewise.
* elf/dl-conflict.c (RESOLVE_MAP): Return NULL not 0.
* sysdeps/mips/machine-gmon.h: Update MCOUNT for current GCC behavior.
* elf/tst-tls3.c: New file.
* elf/tst-tlsmod1.c: New file.
* elf/Makefile: Add rules to build and run tst-tls3.
* sysdeps/i386/dl-machine.h: Include <tls.h>.
(elf_machine_type_class): Set ELF_RTYPE_CLASS_PLT also for the three
TLS relocations.
* sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): More changes
required by passing pointer to last element of the list.
* elf/dl-load.c (_dl_map_object_from_fd): Move adjustment of
l_tls_initimage to a place where it actually is performed.
* elf/tls-macros.h: ...here. New file.
* elf/dl-deps.c (struct openaux_args): Add open_mode element.
(openaux): Pass open_mode as new last argument to _dl_map_object.
(_dl_map_object_deps): Add new argument open_mode. Initialize
open_mode element of args variable with it.
* elf/dl-open.c (dl_open_worker): Pass __RTLD_DLOPEN flag is set to
_dl_map_object_deps.
* elf/rtld.c (dl_main): Add zero as last parameter to
_dl_map_object_deps call.
* sysdeps/generic/ldsodefs.h: Adjust prototype of _dl_map_object_deps.
* elf/nodlopen2.c: New file.
* elf/nodlopenmod2.c: New file.
* elf/Makefile: Add rules to build and run nodlopen2.
* elf/tls-macros.hgg: ...here. New file.
2002-02-08 Richard Henderson <rth@redhat.com>
* elf/Makefile (tests): Add tst-tls1.
* elf/tst-tls1.c: New file.
* sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Don't handle
alignment of TCB for now.
* elf/rtld.c (dl_main): Use p_vaddr as address of TLS
initialization image for the application itself.
loop to initialize TLS block.
2002-02-09 Ulrich Drepper <drepper@redhat.com>
* sysdeps/generic/dl-tls.c (_dl_allocate_tls): Correctly terminate
loop to initial TLS block.
* csu/version.c (banner): If TLS support is available say so.
2002-02-09 Richard Henderson <rth@twiddle.net>
* sysdeps/generic/ldsodefs.h (struct rtld_global): Also include
_dl_cpuclock_offset if HP_SMALL_TIMING_AVAIL.
2002-02-09 Jakub Jelinek <jakub@redhat.com>
* sysdeps/generic/dl-environ.c (unsetenv): Clear cnt before use.
* po/ca.po: Update from translation team.
* po/sk.po: Likewise.
2002-02-08 Ulrich Drepper <drepper@redhat.com>
* elf/rtld.c (_dl_start_final): Install DTV explicitly.
(dl_main): Move dtv/static TLS handling before relocation.
Unconditionally call _dl_tlsoffset. Call _dl_allocate_tls and
TLS_INIT_TP to allocate and install the dtv/static TLS block.
* sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): If no object
so far uses TLS initialize GL(dl_tls_static_size) and
GL(dl_tls_static_align) to account for the TCB.
(_dl_allocate_tls): New function.
* sysdeps/generic/ldsodefs.h (rtld_global): Add
_dl_initial_dtv_malloced.
* configure.in: Test for __builtin_memset more realistically.
* csu/version.c (banner): If TLS support available say so.
2002-02-04 H.J. Lu <hjl@gnu.org>
* sysdeps/mips/dl-machine.h (elf_machine_matches_host): Use
__attribute_used__.
(__dl_runtime_resolve): Likewise.
* sysdeps/mips/machine-gmon.h (_MCOUNT_DECL): Make it a real
declaration.
2001-11-15 H.J. Lu <hjl@gnu.org>
* sysdeps/unix/sysv/linux/mips/sys/procfs.h: Don't include
<signal.h>, <sys/ucontext.h> nor <asm/elf.h>. Updated for gdb.
* sysdeps/unix/sysv/linux/mips/sys/user.h: New.
2002-02-07 Andreas Schwab <schwab@suse.de>
* configure.in: Fix check for -zcombreloc.
2002-02-06 H.J. Lu <hjl@gnu.org>
* config.h.in (HAVE_BUILTIN_MEMSET): New.
* configure.in: Check if __builtin_memset really works.
* elf/rtld.c (_dl_start): Check HAVE_BUILTIN_MEMSET instead of
__GNUC_PREREQ (2, 96) before using __builtin_memset.
2002-02-06 Jakub Jelinek <jakub@redhat.com>
* io/bug-ftw3.c (main): Don't try the test if root.
2002-02-06 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/unix/sysv/linux/s390/brk.c (__brk): Correct inline assembly
constraints.
* sysdeps/unix/sysv/linux/s390/s390-32/bits/resource.h (RLIMIT_LOCKS):
Add RLIMIT_LOCKS and adjust RLIMIT_NLIMITS.
* sysdeps/unix/sysv/linux/s390/s390-64/bits/resource.h (RLIMIT_LOCKS):
Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/clone.S (clone): Make clone
a weak alias for __clone.
* sysdeps/unix/sysv/linux/s390/s390-64/clone.S (clone): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h: Fix typo.
* sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Add framestate.
* sysdeps/unix/sysv/linux/s390/s390-64/Versions: New file.
* sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap64): Make __mmap
a weak alias for __mmap64.
* sysdeps/mips/atomicity.h (exchange_and_add): Not use branch likely.
* sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise.
* sysdeps/generic/dl-tls.c: Don't read TLS header if TLS is not needed.
2002-02-07 Ulrich Drepper <drepper@redhat.com>
* sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Account for
alignment of the TCB and store total size and alignment of static
TLS block in _dl_tls_static_size and _dl_tls_static_align.
tls_index is a typedef.
* sysdeps/generic/ldsodefs.h: Declare _dl_tls_static_size and
_dl_tls_static_align.
* sysdeps/i386/dl-tls.h: tls_index is a typedef.
* elf/dl-support.c: Define _dl_tls_static_size and
_dl_tls_static_align.
Each version inherits from the last one only if they have the same
nonnumeric prefix, i.e. GLIBC_x.y and GLIBC_x.z or FOO_x and FOO_y
but not GLIBC_x and FOO_y.
* scripts/firstversions.awk: Handle libraries that don't have each
particular version named in the third column of shlib-versions.
2002-02-06 Ulrich Drepper <drepper@redhat.com>
* Versions.def [ld]: Add GLIBC_2.3.
* elf/Versions [ld]: Add __tls_get_addr to GLIBC_2.3.
* elf/Makefile (dl-routines): Add dl-tls.
(distribute): Add dl-tls.h.
* sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
_dl_tls_module_cnt, add _dl_tls_max_dtv_idx and _dl_tls_dtv_gaps.
Add prototypes for _dl_next_tls_modid and _dl_determine_tlsoffset.
* elf/dl-load.c (_dl_map_object_from_fd): Store alignment requirement
along with the other info in the link map. Change queueing of init
images for double linked list. Use _dl_next_tls_modid to compute
l_tls_modid.
* elf/rtld.c (_dl_start_final): Store alignment requirement
along with the other info in rtld map and executable map.
(dl_main): Add ld.so to the init image list if necessary. Compute
final module ID with _dl_next_tls_modid.
* include/link.h (struct link_map): Add l_tls_previmage and
l_tls_align.
* eld/dl-support.c: Define _dl_tls_max_dtv_idx and _dl_tls_dtv_gaps.
* sysdeps/i386/elf/Versions: New file.
* sysdeps/generic/dl-tls.c: New file.
* sysdeps/generic/dl-tls.h: New file.
* sysdeps/i386/dl-tls.h: New file.
attribute((packed)) to counter stupid people misusing gcc options.
2002-02-06 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/bits/stat.h (struct stat): Add
attribute((packed)) to counter stupid people misuing gcc options.
(struct stat64): Likewise.
2002-02-05 Ulrich Drepper <drepper@redhat.com>
* elf/rtld.c (dl_main): Correct indentation. Use bool as type for
the variables which are used as booleans.
* elf/rtld.c (_dl_start): Fill TLS values in link map for rtld.
* include/link.h (struct link_map): Add various members for TLS
information.
* sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
_rtld_tlsoffset, add _dl_initimage_list.
* sysdeps/i386/dl-lookupcfg.h: New file.
* sysdeps/i386/dl-machine.h (elf_machine_rel): Implement missing
TLS relocation. When using TLS we now use RESOLVE_MAP.
(elf_machine_rela): Use RESOLVE_MAP instead of RESOLVE_MAP if TLS
is used.
* sysdeps/generic/dl-cache.c (_dl_cache_libcmp): Mark as possibly
unused.
* elf/rtld.c (_dl_start_final): Allocate TLS and initialize
thread-pointer as soon as possible.
* sysdeps/generic/ldsodefs.h: Include <tls.h>. Define first TLS
elements in rtld_global.
* sysdeps/generic/tls.h: New file.
* elf/Makefile (distribute): Add tls.h.
* sysdeps/i386/dl-machine.h (elf_machine_rel): Add support for TLS
relocations. Not complete yet.
* resolv/resolv.h: Allow user to define __need_res_state and only
define __res_start structure then.
* include/resolv.h: Only declare functions if _RESOLV_H_ is defined.
2002-02-03 Andreas Schwab <schwab@suse.de>
* sysdeps/posix/readv.c: Use ssize_t for bytes_read.
* sysdeps/posix/writev.c: Use ssize_t for bytes_written. Fix comment.
2002-02-03 Thorsten Kukuk <kukuk@suse.de>
* sysdeps/posix/writev.c: Check for ssize_t overflow, don't use
alloca if the memory reqirements are too high.
2002-02-03 Ulrich Drepper <drepper@redhat.com>
* elf/dl-load.c (decompose_rpath): Avoid using strstr.
* elf/dl-minimal.c (_strerror_r): Use _itoa instead of _itoa_word since
the former is available anyway and speed isn't important here.
* elf/dl-misc.c (_dl_debug_vdprintf): Likewise.
* elf/dl-version.c (match_symbol): Likewise.
(_dl_check_map_versions): Likewise.
* elf/rtld.c (process_envvars): Likewise.
(print_statistics): Likewise.
* sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Likewise.
* elf/dl-minimal.c (_itoa): Always define it. Make it work for all
bases. Add assert to catch uses of unimplemented features.
(__strsep): Add assert to catch uses of unimplemented features.
* elf/dl-object.c (_dl_new_object): Don't use rawmemchr. Use strchr
and avoid inline optimization.
* elf/rtld.c (process_envvars): Likewise.
* elf/dl-open.c: Don't include <stdio-common/_itoa.h>.
* elf/dl-profile.c (_dl_start_profile): Help compiler to avoid ffs.
* elf/rtld.c (dl_main): Avoid strsep inline optimization.
* stdio-common/_itoa.h: Minor simplifications of the code.
* stdio-common/_itoa.c: Likewise.
* elf/dl-reloc.c (_dl_relocate_object): Use _dl_debug_printf
instead of _dl_printf for debugging info output.
* sysdeps/mips/atomicity.h (exchange_and_add): Use branch likely.
2002-02-02 Ulrich Drepper <drepper@redhat.com>
* manual/examples/mkfsock.c (make_named_socket): Make sure name is
always NUL-terminated. Patch by Chris D. Sloan <cds@cs.hmc.edu>.
2002-02-01 H.J. Lu <hjl@gnu.org>
* sysdeps/mips/atomicity.h (exchange_and_add): Use branch
likely.
(atomic_add): Likewise.
(compare_and_swap): Return 0 only when failed to compare. Use
branch likely.
* sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Use
branch likely.
2002-02-03 kaz Kojima <kkojima@rr.iij4u.or.jp>
* sysdeps/sh/dl-machine.h (elf_machine_rela): Fix a typo.
2002-02-02 Ulrich Drepper <drepper@redhat.com>
* elf/dl-minimal.c (__strsep): New minimal implementation.
2002-02-02 Paul Eggert <eggert@twinsun.com>
* src/mktime.c [defined DEBUG && STDC_HEADERS]: Include <string.h>.
(__mktime_internal): If no tm_isdst is requested, prefer solutions
with tm_isdst > 0 when the requested time falls within a
spring-forward gap [PR libc/2894].
* elf/dl-object.c (_dl_new_object): Avoid using strrchr. We have
more information.
* elf/rtld.c (dl_main): Avoid strrchr.
* sysdeps/unix/sysv/linux/dl-origin.c (_dl_get_origin): Use the
result of readlink. Search from the back for '/'.
* elf/do-rel.h (elf_dynamic_do_rel): Help the compiler recognize
code which is never used when relocating ld.so itself.
(_ELF_DYNAMIC_DO_RELOC): Help the compiler optimize a bit.
2002-01-18 Isamu Hasegawa <isamu@yamato.ibm.com>
* locale/program/ld-collate.c (collate_finish): Assign a wide
char collation sequence value to multi character collating
elements, and avoid over writing by non-character elements.
2002-02-01 Ulrich Drepper <drepper@redhat.com>
* elf/rtld.c (_dl_start): Mark as internal_function.
* sysdeps/i386/dl-machine.h (RTLD_START): Pass parameter for _dl_start
in register.
(elf_machine_rel): Cleanup and minor optimization for RTLD_BOOTSTRAP.
General pretty printing.
2002-01-31 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/readv.c: Don't use alloca if the memory requirements
are too high.
2002-01-31 Andreas Schwab <schwab@suse.de>
* sysdeps/posix/readv.c: Check for ssize_t overflow.
2002-01-31 Andreas Schwab <schwab@suse.de>
* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Fix leftover
reference to _dl_pagesize.
* manual/signal.texi (Process Signal Mask): Document that
pthread_sigmask, not sigprocmask, must be used in MT programs.
Patch by Bertold Kolics <Bertold.Kolics@Sun.COM>.
2002-01-18 Wolfram Gloger <wg@malloc.de>
* malloc/malloc.c: Rewrite, adapted from Doug Lea's malloc-2.7.0.c.
* malloc/malloc.h: Likewise.
* malloc/arena.c: New file.
* malloc/hooks.c: New file.
* malloc/tst-mallocstate.c: New file.
* malloc/Makefile: Add new testcase tst-mallocstate.
Add arena.c and hooks.c to distribute. Fix commented CPPFLAGS.
2002-01-28 Ulrich Drepper <drepper@redhat.com>
* stdlib/msort.c: Remove last patch. The optimization violates the
same rule which qsort.c had problems with.
2002-01-27 Paul Eggert <eggert@twinsun.com>
* stdlib/qsort.c (_quicksort): Do not apply the comparison function
to a pivot element that lies outside the array to be sorted, as
ISO C99 requires that the comparison function be called only with
addresses of array elements [PR libc/2880].
2002-01-23 Richard Henderson <rth@redhat.com>
* sysdeps/alpha/Makefile (pic-ccflag): New variable.
2002-01-28 Ulrich Drepper <drepper@redhat.com>
* string/strxfrm.c: Allocate one more byte for rulearr and clear
this element [PR libc/2855].
* string/strcoll.c: Handle zero-length arguments specially
[PR libc/2856].
2002-01-23 Jakub Jelinek <jakub@redhat.com>
* string/bits/string2.h (__mempcpy): For gcc 3.0+, don't use
__mempcpy_small but instead use __builtin_memcpy ( , , n) + n for
short lengths and constant src.
(strcpy): Don't optimize for gcc 3.0+.
(__stpcpy): For gcc 3.0+, don't use
__stpcpy_small but instead use __builtin_strcpy (, src) + strlen (src)
for short string literal src.
2002-01-23 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
* sysdeps/unix/sysv/linux/configure.in (libc_cv_gcc_unwind_find_fde):
Set for arm, too.
2001-01-22 Paul Eggert <eggert@twinsun.com>
* manual/llio.texi (Linked Channels, Cleaning Streams):
Make it clearer that a just-opened input stream might need cleaning.
2002-01-21 H.J. Lu <hjl@gnu.org>
* sysdeps/mips/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC):
Don't use label at end of compound statement.
2002-01-28 Stephen L Moshier <moshier@mediaone.net>
* sysdeps/ieee754/ldbl-96/e_lgammal_r.c (__ieee754_lgammal_r):
Remove test for negative integer arg; sin_pi does it correctly.
2002-01-19 Ulrich Drepper <drepper@redhat.com>
* libio/fileops.c (_IO_file_underflow_mmap): Don't define as static.
Set offset if read end wasn't the buffer end.
(_IO_file_seekoff_mmap): New function.
(_IO_file_xsgetn_mmap): New function.
(_IO_file_jumps_mmap): Use the two new functions.
* libio/wfileops.c (_IO_wfile_underflow_mmap): Handle end read buffer
!= end buffer.
* libio/libioP.h: Declare _IO_file_seekoff_mmap and
_IO_file_underflow_mmap.
* libio/iofopen.c: Don't position file descriptor at end of file.
* libio/tst-widetext.c: Improve error messages.
* stdio-common/tst-rndseek.c: Likewise.
2002-01-16 Roger Sayle <roger@eyesopen.com>
* stdlib/msort.c (msort_with_tmp): Replace implementation with
more efficient "Towers of Hanoi" mergesort.
(hanoi_sort, hanoi_sort_int, hanoi_sort_long): New functions,
for generic, sizeof(int) and sizeof(long) variants respectively.
* manial/syslog.texi (openlog): Describe possible problems with
first parameter.
Patch by Christopher Allen Wing <wingc@engin.umich.edu>.
2002-01-17 Ulrich Drepper <drepper@redhat.com>
* nscd/nscd.c (drop_privileges): Removed. Adjust caller.
* nscd/connections.c (begin_drop_privileges): New function.
(finish_drop_privileges): New function.
(nscd_init): Call the new functions which also install all groups
for the server user.
2002-01-17 H.J. Lu <hjl@gnu.org>
* sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Remove
`const' from `got'.
2002-01-17 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S: Use 64 bit
instructions for pointer operations.
* sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S: Likewise.
2002-01-16 Ulrich Drepper <drepper@redhat.com>
* iconvdata/gb18030.c: Bug fixes and support for more characters.
Patch by Yu Shao <yshao@redhat.com>.
2002-01-16 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/unix/sysv/linux/s390/swapcontext.c: Remove.
* sysdeps/unix/sysv/linux/s390/s390-32/swapcontext.S: New file.
* sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S: New file.
2002-01-14 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/s390/fpu/libm-test-ulps: Update.
2002-01-10 Ulrich Drepper <drepper@redhat.com>
* locale/programs/charmap.c (new_width): Check whether byte
sequences for both ends of range have the same length.
2002-01-07 Stephen L Moshier <moshier@mediaone.net>
* sysdeps/ieee754/ldbl-96/s_erfl.c (erfcl): Fix K&R header.
* sysdeps/ieee754/ldbl-96/e_lgammal_r.c (sin_pi): Fix typo in test
for x < 0.25 and restore original range reduction method.
(__ieee754_lgammal_r): Make sure signgam is set before returning.
* sysdeps/mach/hurd/configure.in (hurd_MIG_RETCODE: New macro
swiped from hurd package's aclocal.m4; use it to set HAVE_MIG_RETCODE.
* sysdeps/mach/hurd/configure: Regenerated.
2001-12-31 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Always use C
locale to parse /proc/loadavg.
2001-12-31 Jakub Jelinek <jakub@redhat.com>
* elf/dl-conflict.c: Include sys/param.h.
(RESOLVE_CONFLICT_FIND_MAP): Cast r_offset to ElfW(Addr).
* sysdeps/alpha/dl-machine.h (elf_machine_runtime_setup): Avoid
warning.
(TRAMPOLINE_TEMPLATE, RTLD_START): Don't use multi-line string
literals to avoid warnings.
* configure.in: Don't check for gsed since we do not use it anywhere.
2001-12-19 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/unix/sysv/linux/s390/profil-counter.h: Move/copy to ...
* sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h: ... here,
remove high order bit from the program counter.
* sysdeps/unix/sysv/linux/s390/s390-64/profil-counter.h: ... and here.
2001-12-19 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Remove
unnecessary code and add missing reloc types.
* sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Add empty
case for reloc type R_390_NONE.
check only (SS->pending & MASK) for the signal to return.
From Jeroen Dekkers <jeroen@dekkers.cx>.
* iconv/skeleton.c [!RESET_INPUT_BUFFER && !SAVE_RESET_STATE]:
Use preprocessor #if conditionals instead of `if' to avoid
warnings about divide by zero in dead code.
2001-12-21 Andreas Jaeger <aj@suse.de>
* elf/dblloadmod1.c: Add prototype to avoid warning.
* elf/dblloadmod2.c: Likewise.
* elf/dblloadmod3.c: Likewise.
* elf/reldepmod5.c: Likewise.
* elf/reldepmod6.c: Likewise.
* elf/dl-conflict.c (_dl_resolve_conflicts): Add unused attribute
for resolve_conflict_map since RESOLVE_CONFLICT_FIND_MAP is not
used on all architectures.
* sunrpc/svc_tcp.c: Add noreturn attribute for
svctcp_rendezvous_abort.
* sunrpc/svc_unix.c: Likewise for svcunix_rendezvous_abort.
* sysdeps/generic/strstr.c (strstr): Add paranthese for assignment
to avoid warning.
2001-12-18 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (clone): Subtract
stack bias from child stack pointer before passing it to clone syscall.
2001-12-18 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/sysconf.c (__sysconf): Respect POSIX minimum for
_SC_TZNAME_MAX.
* sysdeps/generic/sysconf.c (__sysconf): Likewise.
Reported by Thorsten Kukuk <kukuk@suse.de>.
* sysdeps/unix/grantpt.c (grantpt): Correct typo in comment and
add some casts.
* sysdeps/unix/sysv/linux/grantpt.c: Make __unix_grantpt static.
2001-12-18 Thorsten Kukuk <kukuk@suse.de>
* sysdeps/unix/sysv/linux/grantpt.c: Make errno results standard
conforming: return EBADF if file descriptor is invalid and EINVAL
if file descriptor is no valid tty.
* login/tst-grantpt.c: New file.
* login/Makefile (tests): Add tst-grantpt.
2001-12-17 Ulrich Drepper <drepper@redhat.com>
* io/ftw.c (ftw_dir): Handle inaccessibility of toplevel dir
different than implemented in last patch.
* io/bug-ftw3.c: Adjust test for changed handling of
inaccessibility of toplevel dir.
`default:' to silence new GCC warning.
Rewrite cast of lvalue to silence new GCC warning.
* sysdeps/mach/hurd/i386/init-first.c: Avoid multi-line strings in asm.
2001-12-13 Ulrich Drepper <drepper@redhat.com>
* stdio-common/tst-sprintf.c: New file.
2001-12-13 Andreas Schwab <schwab@suse.de>
* stdio-common/vfprintf.c (process_string_arg): Correctly handle
zero precision with wide character string format.
2001-12-13 Thorsten Kukuk <kukuk@suse.de>
* sysdeps/posix/cuserid.c (cuserid): If we don't find the UID,
but have a user supplied buffer, return the empty buffer, not NULL.
2001-12-13 Ulrich Drepper <drepper@redhat.com>
* crypt/md5.c (md5_process_bytes): Correct handling of alignment.
Patch by Eric Sharkey <sharkey@netrics.com>.
* crypt/md5test.c (main): Add test for multiple calls to
__md5_process_bytes to itererate over input string.
2001-12-12 Ulrich Drepper <drepper@redhat.com>
* nis/nis_findserv.c (__nis_findfastest_with_timeout): Mostly the code
from __nis_findfastest. Take timeout value from parameter.
(__nis_findfastest): Call __nis_findfastest_with_timeout repeatedly.
* nis/nis_intern.h: Define parameters controlling __nis_findfastest.
Patch by Alexander Belopolsky <alexb@rentec.com>.
* sysdeps/arm/dl-machine.h (elf_machine_rela): Fix typo in last patch.
combreloc test so that it works in this case.
2001-12-12 Andreas Jaeger <aj@suse.de>
* configure.in: Use -nostartfiles -nostdlib for linker tests, fix
combreloc test so that it works in this case.
* sysdeps/arm/dl-machine.h (elf_machine_rela): Fix typo in last
patch.
2001-12-12 NIIBE Yutaka <gniibe@m17n.org>
* sysdeps/sh/Makefile: New file.
* sysdeps/sh/_mcount.S: New file.
* sysdeps/sh/sysdep.h (CALL_MCOUNT): Implemented.
* sysdeps/sh/machine-gmon.h: Remove "NOTYET" comment, as we are ready.
2001-12-11 Jakub Jelinek <jakub@redhat.com>
* elf/Makefile (dl-routines): Add conflict.
(rtld-ldscript-in, rtld-ldscript, rtld-parms): Remove.
(ld.so): Add _begin local symbol.
* elf/elf.h (DT_VALTAGIDX, DT_VALNUM, DT_ADDRTAGIDX, DT_ADDRNUM):
Define.
* elf/dl-deps.c (_dl_build_local_scope): New.
(_dl_map_object_deps): If LD_TRACE_PRELINKING, compute local scopes
of all libraries.
* elf/do-rel.h (VALIDX): Define.
(elf_dynamic_do_rel): If ELF_MACHINE_PLT_REL is defined, don't do
lazy binding for RELA. If DT_GNU_PRELINKED, DT_RELACOUNT relocations
can be skipped.
* elf/dl-conflict.c: New file.
* elf/dl-lookup.c (_dl_debug_bindings): New.
(_dl_lookup_symbol): Use _dl_debug_bindings. Reference_name is always
non-NULL.
(_dl_lookup_symbol_skip): Likewise.
(_dl_lookup_versioned_symbol): Likewise.
(_dl_lookup_versioned_symbol_skip): Likewise.
* elf/dl-runtime.c (PLTREL): If ELF_MACHINE_PLT_REL is defined,
define to ElfW(Rel).
* elf/dynamic-link.h (elf_get_dynamic_info): Record selected dynamic
tags in the DT_VALRNGLO..DT_VALRNGHI and DT_ADDRRNGLO..DT_ADDRRNGHI
ranges.
Don't adjust address dynamic tags if l_addr is 0.
* elf/rtld.c (_dl_trace_prelink, _dl_trace_prelink_map): New variables.
(_dl_start): Skip ELF_DYNAMIC_RELOCATE if ld.so is prelinked.
(VALIDX, ADDRIDX): Define.
(_dl_start_final): Initialize _dl_rtld_map's l_map_start and l_map_end.
(dl_main): Print library list for LD_TRACE_PRELINKING.
If prelinking information can be used, skip relocating libraries and
call _dl_resolve_conflicts instead.
(process_envvars): Handle LD_TRACE_PRELINKING envvar.
* elf/dl-load.c (_dl_map_object): Don't create fake libs
if LD_TRACE_PRELINKING.
* include/link.h (struct link_map) [l_info]: Add DT_VALNUM
+ DT_ADDRNUM.
* sysdeps/generic/ldsodefs.h (_dl_trace_prelink_map): New declaration.
(DL_DEBUG_PRELINK): Define.
(_dl_resolve_conflicts): Add prototype.
* sysdeps/alpha/dl-machine.h (elf_machine_runtime_setup): Reinitialize
.plt for prelinked libraries where prelinking info cannot be used.
(elf_machine_rela): If relocating R_ALPHA_JMP_SLOT in .gnu.conflict
section, use RESOLVE_CONFLICT_FIND_MAP to find out reloc's link_map.
* sysdeps/arm/bits/link.h: New file.
* sysdeps/arm/dl-machine.h (elf_machine_runtime_setup): Save original
content of .got[1].
(ELF_MACHINE_NO_RELA): Only define if RTLD_BOOTSTRAP.
(ELF_MACHINE_PLT_REL): Define.
(elf_machine_rela, elf_machine_rela_relative): New.
(elf_machine_lazy_rel): Reinitialize R_ARM_JUMP_SLOT address instead
of adjusting it if prelinked and prelinking cannot be used.
* sysdeps/i386/bits/link.h: New file.
* sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Save original
content of .got[1].
(ELF_MACHINE_NO_RELA): Only define if RTLD_BOOTSTRAP.
(ELF_MACHINE_PLT_REL): Define.
(elf_machine_rela, elf_machine_rela_relative): New.
(elf_machine_lazy_rel): Reinitialize R_386_JUMP_SLOT address instead
of adjusting it if prelinked and prelinking cannot be used.
* sysdeps/powerpc/dl-machine.h (elf_machine_rela): If relocating
conflicts, skip finaladdr computation. Use RESOLVE_CONFLICT_FIND_MAP
to find out map for R_PPC_JMP_SLOT relocs.
* sysdeps/sparc/sparc32/dl-machine.h (VALIDX): Define.
(OPCODE_BA): Define.
(elf_machine_runtime_setup): Reinitialize .plt for prelinked
libraries where prelinking info cannot be used.
(sparc_fixup_plt): Renamed from elf_machine_fixup_plt.
(elf_machine_fixup_plt): Call sparc_fixup_plt.
(elf_machine_rela): Set value to 0 if relocating conflicts.
Call sparc_fixup_plt for R_SPARC_JMP_SLOT.
* sysdeps/sparc/sparc64/dl-machine.h (VALIDX): Define.
(sparc64_fixup_plt): Fix a typo.
(elf_machine_rela): Set value to 0 if relocating conflicts.
Handle R_SPARC_JMP_SLOT relocs when relocating conflicts.
(elf_machine_runtime_setup): Reinitialize .plt for prelinked
libraries where prelinking info cannot be used.
* sysdeps/sh/bits/link.h: New file.
* sysdeps/sh/dl-machine.h (elf_machine_runtime_setup): Save original
content of .got[1].
(elf_machine_lazy_rel): Reinitialize R_SH_JMP_SLOT address instead
of adjusting it if prelinked and prelinking cannot be used.
* sysdeps/s390/s390-32/bits/link.h: New file.
* sysdeps/s390/s390-32/dl-machine.h (elf_machine_runtime_setup):
Save original content of .got[1].
(elf_machine_lazy_rel): Reinitialize R_390_JMP_SLOT address instead
of adjusting it if prelinked and prelinking cannot be used.
* sysdeps/s390/s390-64/bits/link.h: New file.
* sysdeps/s390/s390-64/dl-machine.h (elf_machine_runtime_setup):
Save original content of .got[1].
(elf_machine_lazy_rel): Reinitialize R_390_JMP_SLOT address instead
of adjusting it if prelinked and prelinking cannot be used.
* sysdeps/x86_64/bits/link.h: New file.
* sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup):
Save original content of .got[1].
(elf_machine_lazy_rel): Reinitialize R_X86_64_JMP_SLOT address instead
of adjusting it if prelinked and prelinking cannot be used.
2001-12-11 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/ptsname.c (__ptsname_r): Use sizeof
where appropriate instead of numbers. Little optimizations.
2001-12-10 Thorsten Kukuk <kukuk@suse.de>
* io/ftw.c (ftw_startup): Check, if the path is search and readable.
* io/Makefile (tests): Add bug-ftw3.
* io/bug-ftw3.c: New file.
2001-12-10 Ulrich Drepper <drepper@redhat.com>
* sysdeps/generic/glob.c (glob): Return only pattern if nothing
matches and GLOB_NOCHECK is set.
* posix/globtest.sh: Correct expected result for NOCHECK test.
* po/ca.po: Update from translation team.
2001-12-06 Ulrich Drepper <drepper@redhat.com>
* libio/vasprintf.c (_IO_vasprintf): Free buffer on failure.
* assert/assert.c: Check result of __asprintf call and don't use
string if it failed.
* assert/assert-perr.c: Likewise.
* inet/rcmd.c: Likewise.
* locale/programs/localedef.c (main): Check result of
construct_output_path and exit if it failed.
(construct_output_path): Check result of asprintf and mkdir calls and
fail if they failed.
* posix/getopt.c: Check result of __asprintf calls and fail if
they failed.
Patch by Dmitry V. Levin <ldv@alt-linux.org>.
* iconvdata/ibm1129.h: Remove duplicate mappings.
* iconvdata/ibm937.c: Handle overflow errors. Handle new tables.
* iconvdata/ibm937.h: Reorganize table to safe a lot of space.
Patch by Masahide Washizawa <WASHI@jp.ibm.com>.
* timezone/zic.c: Fix handling of turnaround times.
Patch by Arthur David Olson <olsona@dc37a.nci.nih.gov>.
2001-12-02 Moshe Olshansky <OLSHANSK@il.ibm.com>
* sysdeps/ieee754/dbl-64/e_remainder.c (__ieee754_remainder): Fix
overflow problem.
2001-12-05 Ulrich Drepper <drepper@redhat.com>
* posix/regex.c: For use outside glibc defined bounded pointer
macros here. Patch by Jim Meyering <jim@meyering.net>.
missing backslash in test arguments.
* sysdeps/mach/hurd/configure: Regenerated.
2001-11-26 Roland McGrath <roland@frob.com>
* hurd/hurdinit.c (_hurd_ports_use): Check if _hurd_ports is null.
Reported by John Tobey <jtobey@john-edwin-tobey.org>.
* iconv/gconv_open.c (__gconv_open): Empty codeset name now means using
the current locale's codeset.
* iconv/iconv_open.c (iconv_open): Don't strip out everything for
empty input string.
* iconv/iconv_prog.c: Pass empty strings as default value for to-
and from-charset. Don't determine locale's charset here.
if libio is used [PR libc/2575].
2001-11-28 Ulrich Drepper <drepper@redhat.com>
* libio/genops.c (_IO_flush_all_lockp): New function. The same code
as the old _IO_flush_all but lock only if parameter is nonzero.
(_IO_flush_all): Call _IO_flush_all_lockp with 1 as parameter.
* libio/libioP.h: Add prototype for _IO_flush_all_lockp.
* sysdeps/generic/abort.c (fflush): Define to _IO_flush_all_lockp(0)
if libio is used.
2001-11-22 Thorsten Kukuk <kukuk@suse.de>
* nss/nss_files/files-hosts.c (_nss_files_get##name##_r): Set
herrnop to NETDB_INTERNAL if we run out of buffer space.
2001-11-28 Ulrich Drepper <drepper@redhat.com>
* nss/nss_files/files-XXX.c (internal_getent): Correct input
overflow test for platforms with signed char.
Reported by Andrew Haley <aph@cambridge.redhat.com>.
* version.h (RELEASE): Define as development.
(VERSION): Set to 2.2.90.
2001-11-22 Thorsten Kukuk <kukuk@suse.de>
* nis/nss_compat/compat-grp.c: Print group id as unsigned long.
* nis/nss_nis/nis-grp.c: Likewise.
* nis/nss_nisplus/nisplus-grp.c: Likewise.
* nis/nss_compat/compat-pwd.c: Print user id as unsigned long.
* nis/nss_nis/nis-pwd.c: Likewise.
* nis/nss_nisplus/nisplus-pwd.c: Likewise.
* nis/nss_nis/nis-publickey.c: Use strtoul instead of atoi.
* nis/nss_nisplus/nisplus-parser.c: Likewise.
* nis/nss_nisplus/nisplus-publickey.c: Likewise.
* nscd/grpcache.c: Use strtoul instead of atol.
* nscd/pwdcache.c: Likewise.
* nss/getent.c: Likewise.
2001-11-27 Paul Eggert <eggert@twinsun.com>
* sysdeps/posix/tempname.c (__gen_tempname): Try at least
ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
2001-11-19 Bruno Haible <bruno@clisp.org>
* locale/programs/simple-hash.c (insert_entry_2): Resize at 75%, not
90%.
(compute_hashval): Shift by 9 bits, not by 4 bits. This drastically
improves the quality of the hash function, especially for short
strings.
2001-11-26 Ulrich Drepper <drepper@redhat.com>
2001-11-26 Ulrich Drepper <drepper@redhat.com>
* stdio-common/vfscanf.c: If incomplete nan of inf(inity) strings
are found call conv_error and not input_error [PR libc/2669].
* math/bits/mathcalls.h: Mark ceil and floor as const.
Reported by David Mosberger.
2001-11-21 Jim Meyering <meyering@lucent.com>
* posix/regex.c (iswctype, mbrtowc, wcslen, wcscoll, wcrtomb) [_LIBC]:
Define to be __-prefixed.
Remove unnecessary duplication in `#ifdef _LIBC' blocks.
2001-11-15 Andreas Jaeger <aj@suse.de>
* include/features.h (__GLIBC_HAVE_LONG_LONG): Define for
compilers that support it.
* posix/sys/types.h: Use __GLIBC_HAVE_LONG_LONG.
* sysdeps/unix/sysv/linux/bits/types.h: Likewise.
* stdlib/stdlib.h: Likewise.
2001-11-17 Ulrich Drepper <drepper@redhat.com>
* posix/regex.c (byte_re_match_2_internal): For gcc replace switch
statement with gotos.
Based on a patch by Paolo Bonzini <bonzini@pc-amo3.elet.polimi.it>.
2001-11-16 Stephen L Moshier <moshier@mediaone.net>
2001-11-12 Ulrich Drepper <drepper@redhat.com>
* elf/dl-reloc.c (_dl_relocate_object): Avoid iterating over
program header twice. Construct list with the needed information.
2001-11-10 Andreas Jaeger <aj@suse.de>
* sysdeps/ieee754/ldbl-128/e_log2l.c: New file.
* sysdeps/ieee754/ldbl-128/e_log10l.c: Likewise.
Contributed by Stephen L Moshier <moshier@mediaone.net>.
2001-11-09 Ulrich Drepper <drepper@redhat.com>
* elf/dl-minimal.c (realloc): Handle NULL for first parameter
correctly.
* elf/dl-load.c (is_dst): New function.
(_dl_dst_count): Use is_dst to check for DST variable.
(_dl_dst_substitute): Likewise.
* NEWS: Mention it.
* sysdeps/mach/hurd/powerpc/exc2signal.c: New file.
* sysdeps/mach/hurd/powerpc/init-first.c: New file.
* sysdeps/mach/hurd/powerpc/intr-msg.h: New file.
* sysdeps/mach/hurd/powerpc/longjmp-ts.c: New file.
* sysdeps/mach/hurd/powerpc/register-dump.h: New file.
* sysdeps/mach/hurd/powerpc/sigreturn.c: New file.
* sysdeps/mach/hurd/powerpc/static-start.S: New file.
* sysdeps/mach/hurd/powerpc/trampoline.c: New file.
* sysdeps/mach/hurd/powerpc/bits/sigcontext.h: New file.
* sysdeps/mach/hurd/powerpc/Dist: New file.
* elf/dl-load.c (lose): Remove some unnecessary code. The new
object is always the last in the list.
(_dl_map_object_from_fd): Delete code to remove from object list
when DF_1_NOOPEN is seen. This is done in lose.
2001-11-09 Ulrich Drepper <drepper@redhat.com>
* elf/dl-load.c (_dl_map_object_from_fd): Delete code to remove
from object list when DF_1_NOOPEN is seen. This is done in lose.
2001-11-06 Ulrich Drepper <drepper@redhat.com>
* elf/dl-load.c (_dl_map_object_from_fd): Don't call
_dl_signal_error directly, always use lose. Set fd to -1 after
file is closed.
(lose): Don't call close if fd == -1.
* elf/dl-profile.c: Replace state variable with simple flag named
running. Remove commented-out code.
* elf/dl-reloc.c (_dl_relocate_object): Likewise.
* elf/elf.h: Add dynamic tag definitions for prelinking.
* elf/rtld.c (process_envvars): Avoid using array of string pointers.
Rewrite code to remove environment varables for SUID binaries.
Small optimization in LD_PROFILE handling.
* sysdeps/generic/unsecvars.h: Adjust format for process_envvars
changes.
* sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
* sysdeps/generic/dl-sysdep.c: Don't initialize _dl_cpuclock_offset.
* elf/dl-reloc.c (_dl_reloc_bad_type): Rewrite to not use writable
strings. Change type of second parameter.
* sysdeps/generic/ldsodefs.h: Adjust _dl_reloc_bad_type prototype
for last change.
the more-specific unix/sysv/linux/powerpc file and breaks everything.
* sysdeps/powerpc/sysdep.h (ALIGNARG, ASM_TYPE_DIRECTIVE,
ASM_SIZE_DIRECTIVE, CALL_MCOUNT, ENTRY, EALIGN, DO_CALL, JUMPTARGET,
PSEUDO, PSEUDO_RET, PSEUDO_END, L, C_TEXT): These macros moved here
here, put under [__ELF__].
2001-11-02 Jakub Jelinek <jakub@redhat.com>
* string/bits/string2.h (__strndup): If n is smaller than len, set
len to n + 1.
* string/tester.c (test_strndup): New function.
(main): Call it.
* sunrpc/rpc_main.c: Optimize variable definitions a bit.
2001-11-01 Ulrich Drepper <drepper@redhat.com>
* elf/dl-load.c (_dl_map_object): Correct test of DF_1_NODEFLIB
for rtld_search_dirs content. Minor optimizations.
2001-10-31 Ulrich Drepper <drepper@redhat.com>
* elf/dl-load.c (_dl_map_object): Make code a bit more compact by
avoiding unnecessary duplication.
2001-10-31 Jakub Jelinek <jakub@redhat.com>
* elf/dl-load.c (_dl_map_object): If library was found using
LD_LIBRARY_PATH, don't try RUNPATH list.
2001-10-29 Kevin Ryde <user42@zip.com.au>
2001-10-31 Ulrich Drepper <drepper@redhat.com>
* iconvdata/Makefile: Add support for IBM1132, IBM1133, and IBM1162
modules.
* iconvdata/TESTS: Likewise.
* iconvdata/gconv-modules: Likewise.
* iconvdata/ibm1132.c: New file.
* iconvdata/ibm1132.h: New file.
* iconvdata/ibm1133.c: New file.
* iconvdata/ibm1133.h: New file.
* iconvdata/ibm1162.c: New file.
* iconvdata/ibm1162.h: New file.
* iconvdata/testdata/IBM1132: New file.
* iconvdata/testdata/IBM1132..UTF8: New file.
* iconvdata/testdata/IBM1133: New file.
* iconvdata/testdata/IBM1133..UTF8: New file.
* iconvdata/testdata/IBM1162: New file.
* iconvdata/testdata/IBM1162..UTF8: New file.
Patches by Masahide Washizawa <WASHI@jp.ibm.com>.
* string/string.h: Fix typo in comment.
* wcsmbs/wchar.h: Likewise.
2001-10-30 Joseph S. Myers <jsm28@cam.ac.uk>
* manual/getopt.texi (getopt_long, getopt_long_only): Include
const in type of longopts parameter.
* sysdeps/ieee754/dbl-64/mpa.h: Add prototypes for internal functions.
* manual/stdio.texi (Integer Conversions): Corrections to sample printf
2001-10-29 Kevin Ryde <user42@zip.com.au>
* stdio.texi (Integer Conversions): Corrections to sample printf
output, clarify `#' behaviour on 0.
(Floating-Point Conversions): Clarify that %g only uses %e when
the exponent would be greater than 1.
* sysdeps/mach/powerpc/machine-sp.h: New file.
* sysdeps/mach/powerpc/sysdep.h: New file.
* sysdeps/mach/powerpc/thread_state.h: New file.
* sysdeps/mach/hurd/i386/Makefile: File removed; crt0.o rules moved ...
* sysdeps/mach/hurd/Makefile: ... to here. For the time being, we can
expect to need the same thing on every platform.
* sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: File moved ...
* sysdeps/generic/sys/ucontext.h: ... to replace this one.
ASM_TYPE_DIRECTIVE, ASM_SIZE_DIRECTIVE, CALL_MCOUNT, ENTRY, EALIGN,
DO_CALL, JUMPTARGET, PSEUDO, PSEUDO_RET, PSEUDO_END, L, C_TEXT):
Move all these assembly-related definitions to ...
* sysdeps/powerpc/elf/sysdep.h: ... this new file.
* sysdeps/mach/powerpc/machine-lock.h: Assembly code rewritten
by Peter Bruin <pjbruin@dds.nl>.
2001-10-26 Ulrich Drepper <drepper@redhat.com>
* string/strxfrm.c [USE_IN_EXTENDED_LOCALE_MODEL]: Correctly get
nrules value.
2001-10-24 H.J. Lu <hjl@gnu.org>
* sysdeps/generic/bits/dlfcn.h (DL_CALL_FCT): Cast to void *.
Use __BEGIN_DECLS/__END_DECLS around prototypes.
* sysdeps/mips/bits/dlfcn.h (DL_CALL_FCT): Likewise.
2001-10-21 Jim Meyering <meyering@lucent.com>
* malloc/obstack.c (_): Honor the setting of ENABLE_NLS. Otherwise,
this code would end up calling gettext even in packages built
with --disable-nls.
* posix/getopt.c (_): Likewise.
* posix/regex.c (_): Likewise.
2001-10-26 Ulrich Drepper <drepper@redhat.com>
* resolv/gethnamaddr.c (gethostbyaddr): Use ip6.addr for reverse
lookup not ip6.int.
* resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise.
Reported by Martin.v.Loewis@t-online.de [PR libc/2598].
2001-10-19 Jakub Jelinek <jakub@redhat.com>
* misc/sys/cdefs.h (__attribute_used__): Define.
* elf/rtld.c (_dl_start): Add __attribute_used__.
* elf/dl-runtime.c (fixup, profile_fixup): Likewise.
BSD_SETJMP or BSD__SETJMP is defined, resp.
* sysdeps/m68k/bsd-setjmp.c: Inline setjmp code instead of making
a tail call to __sigsetjmp that would require extending the
caller's frame.
* sysdeps/m68k/bsd-_setjmp.c: Likewise.
* sysdeps/m68k/bsd-setjmp.S: Deleted.
* sysdeps/m68k/bsd-_setjmp.S: Deleted.
Reported by Jes Sorensen <jes@trained-monkey.org>.
2001-10-15 Ulrich Drepper <drepper@redhat.com>
* po/ca.po: New file. Contributed by the translation team.
* sysdeps/unix/sysv/linux/mips/sys/sysmips.h: Make sysmips() prototype
a varargs prototype. Remove dependency from kernel header files.
2001-08-15 Ralf Baechle <ralf@gnu.org>
* sysdeps/unix/sysv/linux/mips/sys/sysmips.h: Make sysmips() prototype a
varargs prototype. Remove dependency from kernel header files.
* sysdeps/unix/sysv/linux/mips/bits/termios.h: General cleanup, use
__USE_MISC / __USE_XOPEN not __USE_BSD where appropriate.
* sysdeps/mach/hurd/Makefile: Add $(CFLAGS) for generation of
bits/errno.h
2001-10-07 Roland McGrath <roland@frob.com>
* sysdeps/mach/hurd/setrlimit.c (__setrlimit): Never return ENOSYS.
2001-10-10 Ulrich Drepper <drepper@redhat.com>
* elf/elf.h: Add more ELFOSABI_* constants.
(sparc64_fixup_plt): Moved from elf_machine_fixup_plt. Optimize
2001-10-04 Ben Collins <bcollins@debian.org>
* sysdeps/generic/inttypes.h: Fix typo (define, not defined) in
decleration of __need_wchar_t.
2001-10-03 Jakub Jelinek <jakub@redhat.com>
* string/bits/string2.h (__strsep_g): Add prototype.
(__strsep): Use it.
* string/Versions (__strsep): Remove.
* sysdeps/generic/strsep.c (__strsep_g): Add alias to __strsep.
2001-10-07 Ulrich Drepper <drepper@redhat.com>
* manua/llio.texi: Clarify file references added by mmap.
Patch by Marcus Brinkmann <Marcus.Brinkmann@ruhr-uni-bochum.de>.
2001-09-29 Jes Sorensen <jes@trained-monkey.org>
* sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h (struct sigcontext):
Add sc_loadrs and sc_rbs_bas to match current kernel.
2001-09-27 Jakub Jelinek <jakub@redhat.com>
* sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
* sysdeps/ieee754/ldbl-128/s_erfl.c (__erfcl): Fix erfc(-inf).
2001-09-27 Jakub Jelinek <jakub@redhat.com>
* elf/dl-open.c (dl_open_worker): If l_opencount of freshly loaded
object has been bumped because of relocation dependency, avoid
duplicates in l_scope.
(show_scope): Fix typos.
* elf/Makefile: Add rules to build and run reldep6.
* elf/reldep6.c: New file.
* elf/reldep6mod0.c: New file.
* elf/reldep6mod1.c: New file.
* elf/reldep6mod2.c: New file.
* elf/reldep6mod3.c: New file.
* elf/reldep6mod4.c: New file.
2001-09-26 Jakub Jelinek <jakub@redhat.com>
* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_fixup_plt): Call
sparc64_fixup_plt.
(sparc64_fixup_plt): Moved from elf_machine_fixup_plt. Optimize
near jumps and 0xfffff800XXXXXXXX target addresses, no thread safety
for non-lazy binding. Fix .plt[32768+] handling.
(elf_machine_plt_value): Don't add addend.
(elf_machine_rela): Call sparc64_fixup_plt instead of
elf_machine_fixup_plt.
(elf_machine_runtime_setup, TRAMPOLINE_TEMPLATE): Optimize for
dynamic linker at 0xfffff800XXXXXXXX.
* sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
2001-09-25 Ulrich Drepper <drepper@redhat.com>
* iconvdata/TESTS: Add entries for IBM1160 and IBM1161.
* iconvdata/testdata/IBM1160: New file.
* iconvdata/testdata/IBM1160..UTF8: New file.
* iconvdata/testdata/IBM1161: New file.
* iconvdata/testdata/IBM1161..UTF8: New file.
Patch by Masahide Washizawa <WASHI@jp.ibm.com>.
2001-09-20 H.J. Lu <hjl@gnu.org>
* include/dlfcn.h (__RTLD_SPROF): New definiton.
* elf/dl-open.c (dl_open_worker): Return immediately after loading
for __RTLD_SPROF.
* elf/sprof.c (main): Default to the filename if soname doesn't exist.
(load_shobj): Call dlopen with `RTLD_LAZY | __RTLD_SPROF.
2001-09-20 H.J. Lu <hjl@gnu.org>
* elf/dl-profile.c (_dl_mcount): Use old *narcsp value for newarc,
don't add 1.
2001-09-22 Ulrich Drepper <drepper@redhat.com>
* nss/getent.c: Accept -s parameter to overwrite rules in
nsswitch.conf. Patch by Nalin Dahyabhai <nalin@redhat.com>.
* nss/nss_files/files-network.c (LINE_PARSER): Pad addr string
with as many ".0" as necessary to form a complete address
inet_network understands.
* nss/getent.c: Various cleanups. Use simpler and fewer function
calls.
2001-09-20 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/s390/s390-32/bits/setjmp.h: Correct pointer comparison in
_JMPBUF_UNWINDS.
* sysdeps/s390/s390-64/bits/setjmp.h: Likewise.
2001-09-22 Ulrich Drepper <drepper@redhat.com>
* iconvdata/Makefile: Add rules to build and distribute IBM1160 and
IBM1161.
* iconvdata/gconv-modules: Add entries for IBM1160 and IBM1161.
* iconvdata/ibm1160.c: New file.
* iconvdata/ibm1160.h: New file.
* iconvdata/ibm1161.c: New file.
* iconvdata/ibm1161.h: New file.
2001-09-19 Jakub Jelinek <jakub@redhat.com>
* sysdeps/alpha/dl-machine.h (elf_machine_load_address): Compute the
difference between base address and first PT_LOAD's virtual address,
not the base address.
2001-09-11 Tom Rix <trix@redhat.com>
* sysdeps/unix/sysv/aix/init-first.c (init): Use USE_NONONPTION_FLAG
ifdef for __getopt_clean_environment.
* sysdeps/unix/sysv/aix/libc-start.c: Add real implementation.
* sysdeps/unix/sysv/linux/x86_64/Dist: New file.
* sysdeps/x86_64/Dist: New file.
* sysdeps/x86_64/soft-fp/Dist: New file.
* sysdeps/unix/sysv/linux/x86_64/Makefile: New file.
* sysdeps/unix/sysv/linux/x86_64/Versions: New file.
* sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: New file.
* sysdeps/unix/sysv/linux/x86_64/bits/mman.h: New file.
* sysdeps/unix/sysv/linux/x86_64/bits/stat.h: New file.
* sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: New file.
* sysdeps/unix/sysv/linux/x86_64/bits/time.h: New file.
* sysdeps/unix/sysv/linux/x86_64/bits/types.h: New file.
* sysdeps/unix/sysv/linux/x86_64/brk.c: New file.
* sysdeps/unix/sysv/linux/x86_64/clone.S: New file.
* sysdeps/unix/sysv/linux/x86_64/fstatfs64.c: New file.
* sysdeps/unix/sysv/linux/x86_64/ftruncate64.c: New file.
* sysdeps/unix/sysv/linux/x86_64/fxstat.c: New file.
* sysdeps/unix/sysv/linux/x86_64/fxstat64.c: New file.
* sysdeps/unix/sysv/linux/x86_64/getdents.c: New file.
* sysdeps/unix/sysv/linux/x86_64/getdents64.c: New file.
* sysdeps/unix/sysv/linux/x86_64/getrlimit64.c: New file.
* sysdeps/unix/sysv/linux/x86_64/gettimeofday.c: New file.
* sysdeps/unix/sysv/linux/x86_64/glob64.c: New file.
* sysdeps/unix/sysv/linux/x86_64/lxstat.c: New file.
* sysdeps/unix/sysv/linux/x86_64/lxstat64.c: New file.
* sysdeps/unix/sysv/linux/x86_64/mmap64.c: New file.
* sysdeps/unix/sysv/linux/x86_64/pread64.c: New file.
* sysdeps/unix/sysv/linux/x86_64/profil-counter.h: New file.
* sysdeps/unix/sysv/linux/x86_64/pwrite64.c: New file.
* sysdeps/unix/sysv/linux/x86_64/readdir.c: New file.
* sysdeps/unix/sysv/linux/x86_64/readdir64.c: New file.
* sysdeps/unix/sysv/linux/x86_64/readdir64_r.c: New file.
* sysdeps/unix/sysv/linux/x86_64/readdir_r.c: New file.
* sysdeps/unix/sysv/linux/x86_64/recv.c: New file.
* sysdeps/unix/sysv/linux/x86_64/register-dump.h: New file.
* sysdeps/unix/sysv/linux/x86_64/send.c: New file.
* sysdeps/unix/sysv/linux/x86_64/setrlimit64.c: New file.
* sysdeps/unix/sysv/linux/x86_64/sigaction.c: New file.
* sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: New file.
* sysdeps/unix/sysv/linux/x86_64/sigpending.c: New file.
* sysdeps/unix/sysv/linux/x86_64/sigprocmask.c: New file.
* sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: New file.
* sysdeps/unix/sysv/linux/x86_64/statfs64.c: New file.
* sysdeps/unix/sysv/linux/x86_64/sys/perm.h: New file.
* sysdeps/unix/sysv/linux/x86_64/sys/procfs.h: New file.
* sysdeps/unix/sysv/linux/x86_64/sys/reg.h: New file.
* sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h: New file.
* sysdeps/unix/sysv/linux/x86_64/sys/user.h: New file.
* sysdeps/unix/sysv/linux/x86_64/syscall.S: New file.
* sysdeps/unix/sysv/linux/x86_64/syscalls.list: New file.
* sysdeps/unix/sysv/linux/x86_64/sysdep.S: New file.
* sysdeps/unix/sysv/linux/x86_64/sysdep.h: New file.
* sysdeps/unix/sysv/linux/x86_64/time.c: New file.
* sysdeps/unix/sysv/linux/x86_64/truncate64.c: New file.
* sysdeps/unix/sysv/linux/x86_64/umount.c: New file.
* sysdeps/unix/sysv/linux/x86_64/vfork.S: New file.
* sysdeps/unix/sysv/linux/x86_64/xstat.c: New file.
* sysdeps/unix/sysv/linux/x86_64/xstat64.c: New file.
* sysdeps/unix/x86_64/sysdep.S: New file.
* sysdeps/unix/x86_64/sysdep.h: New file.
* sysdeps/x86_64/Implies: New file.
* sysdeps/x86_64/Makefile: New file.
* sysdeps/x86_64/Versions: New file.
* sysdeps/x86_64/__longjmp.S: New file.
* sysdeps/x86_64/abort-instr.h: New file.
* sysdeps/x86_64/atomicity.h: New file.
* sysdeps/x86_64/bits/endian.h: New file.
* sysdeps/x86_64/bits/setjmp.h: New file.
* sysdeps/x86_64/bits/string.h: New file.
* sysdeps/x86_64/bp-asm.h: New file.
* sysdeps/x86_64/bsd-_setjmp.S: New file.
* sysdeps/x86_64/bsd-setjmp.S: New file.
* sysdeps/x86_64/dl-machine.h: New file.
* sysdeps/x86_64/elf/initfini.c: New file.
* sysdeps/x86_64/elf/start.S: New file.
* sysdeps/x86_64/ffs.c: New file.
* sysdeps/x86_64/ffsll.c: New file.
* sysdeps/x86_64/fpu/bits/fenv.h: New file.
* sysdeps/x86_64/fpu/bits/mathdef.h: New file.
* sysdeps/x86_64/fpu/e_acosl.c: New file.
* sysdeps/x86_64/fpu/e_atan2l.c: New file.
* sysdeps/x86_64/fpu/e_exp2l.S: New file.
* sysdeps/x86_64/fpu/e_expl.c: New file.
* sysdeps/x86_64/fpu/e_fmodl.S: New file.
* sysdeps/x86_64/fpu/e_log10l.S: New file.
* sysdeps/x86_64/fpu/e_log2l.S: New file.
* sysdeps/x86_64/fpu/e_logl.S: New file.
* sysdeps/x86_64/fpu/e_powl.S: New file.
* sysdeps/x86_64/fpu/e_rem_pio2l.c: New file.
* sysdeps/x86_64/fpu/e_scalbl.S: New file.
* sysdeps/x86_64/fpu/e_sqrtl.c: New file.
* sysdeps/x86_64/fpu/fclrexcpt.c: New file.
* sysdeps/x86_64/fpu/fedisblxcpt.c: New file.
* sysdeps/x86_64/fpu/feenablxcpt.c: New file.
* sysdeps/x86_64/fpu/fegetenv.c: New file.
* sysdeps/x86_64/fpu/fegetexcept.c: New file.
* sysdeps/x86_64/fpu/fegetround.c: New file.
* sysdeps/x86_64/fpu/feholdexcpt.c: New file.
* sysdeps/x86_64/fpu/fesetenv.c: New file.
* sysdeps/x86_64/fpu/fesetround.c: New file.
* sysdeps/x86_64/fpu/fgetexcptflg.c: New file.
* sysdeps/x86_64/fpu/fraiseexcpt.c: New file.
* sysdeps/x86_64/fpu/fsetexcptflg.c: New file.
* sysdeps/x86_64/fpu/ftestexcept.c: New file.
* sysdeps/x86_64/fpu/libm-test-ulps: New file.
* sysdeps/x86_64/fpu/math_ldbl.h: New file.
* sysdeps/x86_64/fpu/printf_fphex.c: New file.
* sysdeps/x86_64/fpu/s_atanl.c: New file.
* sysdeps/x86_64/fpu/s_cosl.S: New file.
* sysdeps/x86_64/fpu/s_expm1l.S: New file.
* sysdeps/x86_64/fpu/s_fpclassifyl.c: New file.
* sysdeps/x86_64/fpu/s_isinfl.c: New file.
* sysdeps/x86_64/fpu/s_isnanl.c: New file.
* sysdeps/x86_64/fpu/s_log1pl.S: New file.
* sysdeps/x86_64/fpu/s_logbl.c: New file.
* sysdeps/x86_64/fpu/s_nextafterl.c: New file.
* sysdeps/x86_64/fpu/s_nexttoward.c: New file.
* sysdeps/x86_64/fpu/s_nexttowardf.c: New file.
* sysdeps/x86_64/fpu/s_rintl.c: New file.
* sysdeps/x86_64/fpu/s_significandl.c: New file.
* sysdeps/x86_64/fpu/s_sincosl.S: New file.
* sysdeps/x86_64/fpu/s_sinl.S: New file.
* sysdeps/x86_64/fpu/s_tanl.S: New file.
* sysdeps/x86_64/gmp-mparam.h: New file.
* sysdeps/x86_64/hp-timing.c: New file.
* sysdeps/x86_64/hp-timing.h: New file.
* sysdeps/x86_64/htonl.S: New file.
* sysdeps/x86_64/memusage.h: New file.
* sysdeps/x86_64/setjmp.S: New file.
* sysdeps/x86_64/soft-fp/sfp-machine.h: New file.
* sysdeps/x86_64/stackinfo.h: New file.
* sysdeps/x86_64/sysdep.h: New file.
* sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed: New file.
2001-09-14 H.J. Lu <hjl@gnu.org>
* sysdeps/mips/fpu/libm-test-ulps: Updated.
* sysdeps/unix/sysv/linux/s390/s390-32/sys/ucontext.h: Fix a typo.
Patch by Florian La Roche <laroche@redhat.com>.
2001-09-13 Jakub Jelinek <jakub@redhat.com>
* elf/dl-deps.c (_dl_map_object_deps): Fix filter handling if filter
is already found earlier in the search scope.
2001-09-12 Jakub Jelinek <jakub@redhat.com>
* rt/Makefile (LDFLAGS-rt.so): Use shared thread library as librt's
filter.
2001-09-12 Jakub Jelinek <jakub@redhat.com>
* rt/Makefile (LDFLAGS-rt.so): Use shared thread library as librt's
filter.
* elf/dl-close.c (_dl_close): Don't free l_libname if it is not
2001-09-08 Ben Collins <bcollins@debian.org>
* sysdeps/arm/dl-machine.h (elf_machine_rel): Fix thinko in
usage of RESOLVE() (r_type, not reloc->r_type).
2001-09-08 Ulrich Drepper <drepper@redhat.com>
* elf/dl-object.c: Avoid allocating extra memory block for name.
* elf/dl-close.c (_dl_close): Don't free l_libname if it is no
allocated separately.
* elf/dl-load.c (_dl_map_object_from_fd): Likewise.
2001-09-08 Ulrich Drepper <drepper@redhat.com>
* elf/dl-close.c (_dl_close): If object has no r_list (i.e., wasn't
loaded directly) determine length if l_initfini list by iterating
over its elements. Minor optimizations.
* elf/dl-deps.c (_dl_map_object_deps): Always add own map to l_initfini
for dependency objects.
If object was already loaded check whether any of the dependencies
is already on the relocation dependency list. If yes, remove the
latter. Minor optimizations.
* elf/dl-lookup.c (add_dependency): Add check for self reference of
maps here. Search l_initfini list only if the object was loaded
directly and not only as a dependency.
(_dl_lookup_symbol): Add relocation dependency also if object
is not in global scope. Remove test for self-reference here.
(_dl_lookup_versioned_symbol): Likewise.
* elf/dl-object (_dl_new_object): Cleanup. Initialize dont_free
element of first name record.
* elf/loadtest.c: Add some more test to recognize early if an object
wasn't unloaded.
* elf/Makefile: Add rules to build and run reldep5.
* elf/reldep5.c: New file.
* elf/reldepmod5.c: New file.
* elf/reldepmod6.c: New file.
* elf/reldep2.c: Fix typo.
* elf/dl-object.c (_dl_new_object): Initialize l_scope and l_scope_max.
2001-09-07 Ulrich Drepper <drepper@redhat.com>
* include/link.h (struct link_map): Add l_scope_mem and l_scope_max
elements. Change l_scope to be a pointer only.
* elf/dl-object.c (_dl_new_ojbect): Initialize l_scope and l_scope_max.
* elf/dl-open.c (dl_open_worker): If dependency wasn't just opened
here add searchlist of newly open file to the dependency's scope.
* elf/dl-close.c (_dl_close): If dependency is used otherwise remove
only searchlist from its scope. Free own scope array if necessary.
* elf/Makefile (tests): Add dblload and dblunload now.
2001-09-05 Ulrich Drepper <drepper@redhat.com>
* elf/Makefile: Add rules to build new tests. Don't run them yet since
they both fail.
* elf/dblload.c: New file.
* elf/dblloadmod1.c: New file.
* elf/dblloadmod2.c: New file.
* elf/dblloadmod3.c: New file.
* elf/dblunload.c: New file.
2001-09-04 Jakub Jelinek <jakub@redhat.com>
* iconv/strtab.c (strtabinit): Initialize null Strent.
(newstring): Move len == 0 handling...
(strtabadd): ...here.
If len == 1, return null Strent.
When inserting a suffix of an existing string, check if
it is not equal to some suffix already recorded.
Copy left and right members over if adding longer string.
2001-09-04 Jakub Jelinek <jakub@redhat.com>
* sunrpc/rpc_cout.c (upcase): Account for trailing '\0'.
* sysdeps/unix/sysv/linux/alpha/gethostname.c: Include <errno.h>.
(__syscall_gethostname): Add prototype.
2001-09-01 Richard Henderson <rth@redhat.com>
* sysdeps/alpha/elf/Dist: Remove file.
* sysdeps/alpha/elf/Makefile: Remove file.
* sysdeps/alpha/elf/crtbegin.S: Remove file.
* sysdeps/alpha/elf/crtend.S: Remove file.
* sysdeps/alpha/elf/initfini.c: New file.
2001-09-01 Mark Kettenis <kettenis@gnu.org>
* iconv/tst-iconv1.c: Include <stddef.h> for wchar_t.
* iconv/tst-iconv3.c: Likewise.
2001-09-01 Jakub Jelinek <jakub@redhat.com>
* sysdeps/generic/inttypes.h (__gwchar_t): Define to wchar_t for C++.
handle it like 'I' for symmetry with strftime.
2001-09-01 Ulrich Drepper <drepper@redhat.com>
* iconv/gconv_cache.c: Rename variable cache to __gconv_cache and
export it.
* iconv/Versions (libc) [GLIBC_2.2.5]: Export __gconv_cache.
* iconv/iconv_prog.c (insert_cache): New function.
(print_known_names): If cache is used call insert_cache to use the
information from the cache [PR libc/2509].
2001-08-31 Ulrich Drepper <drepper@redhat.com>
* time/strptime.c (strptime_internal): Recognize 'l' format and
handle it like 'I' for symmatry with strftime.
2001-08-31 Richard Henderson <rth@redhat.com>
* elf/dl-support.c (_dl_cpuclock_offset): Protect with NONAVAIL.
(HP_TIMING_AVAIL): Set to HP_SMALL_TIMING_AVAIL if present.
* elf/rtld.c (HP_TIMING_AVAIL): Likewise.
(print_statistics): Make scalar unsigned long long.
* sysdeps/alpha/hp-timing.h: New file.
2001-08-31 Jakub Jelinek <jakub@redhat.com>
* stdio-common/perror.c (perror): Save errno early, pass it
down to perror_internal.
(perror_internal): Add errnum argument.
2001-08-31 Jakub Jelinek <jakub@redhat.com>
* sysdeps/alpha/dl-machine.h (elf_machine_rela): Remove unused code.
Don't add old memory content for R_ALPHA_REFQUAD.
* sysdeps/unix/sysv/linux/ia64/ioperm.c (_ioperm): Use __open
instead of open, __close instead of close, __getpagesize instead
of getpagesize.
R_ALPHA_RELATIVE if RTLD_BOOTSTRAP and HAVE_Z_COMBRELOC. Only check
for rtld map if neither RTLD_BOOTSTRAP nor HAVE_Z_COMBRELOC is defined.
2001-08-30 Ulrich Drepper <drepper@redhat.com>
* string/argz-stringify.c (__argz_stringify): Use __strnlen
instead of strnlen.
* include/string.h (strndupa): Redefine here to use __strnlen
instead of strnlen.
* string/strndup.c (__strndup): Use __strnlen not strnlen.
* misc/syslog.c (vsyslog): Fix typo in last change (connect ->
connected).
2001-08-29 Ulrich Drepper <drepper@redhat.com>
* nis/nis_findserv.c (__nis_findfastest): Don't fail if reply received
first is from a previous call.
Patch by Alexander Belopolsky <alexb@rentec.com> for [PR libc/3670].
2001-08-29 Andreas Schwab <schwab@suse.de>
* sysdeps/ia64/fpu/libm-test-ulps: Updated.
2001-08-25 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
* config.make.in (INSTALL_SCRIPT): Define.
* Makeconfig (INSTALL_SCRIPT): Define.
* Makerules (do-install-script): New macro to install scripts using
INSTALL_SCRIPT.
(install-bin-script): New rule to install scripts with
do-install-script.
(install-bin-script-nosubdir): New rule.
(install-no-libc.a-nosubdir): Add install-bin-script-nosubdir.
(distinfo-vars): Add $(install-bin-script).
* Rules (others): Likewise.
* Makefile (glibcbug): Install with install-bin-script.
* debug/Makefile (xtrace): Likewise.
(catchsegv): Likewise.
* elf/Makefile (ldd): Likewise.
* malloc/Makefile (mtrace): Likewise.
* timezone/Makefile (tzselect): Likewise.
2001-08-29 H.J. Lu <hjl@gnu.org>
* sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Pass
ELF_RTYPE_CLASS_PLT, instead of R_MIPS_REL32, to
_dl_lookup_versioned_symbol () and _dl_lookup_symbol ().
Add it to LDFLAGS.so, LDFLAGS-rtld, and +link.
2001-08-28 H.J. Lu <hjl@gnu.org>
* Makeconfig (combreloc-LDFLAGS): New variable.
Add it to LDFALGS.so, LDFLAGS-rtld, and +link.
* config.make.in (have-z-combreloc): New variable.
* configure.in: Substitute libc_cv_z_combreloc.
* iconv/strtab.c (searchstring): Use correct length for comparison.
2001-08-28 Ulrich Drepper <drepper@redhat.com>
* sunrpc/rpc_hout.c (pargdef): Function must take pointer to object.
Patch by Patrick Duval <Patrick.Duval@devinci.fr>.
2001-08-28 Andreas Jaeger <aj@suse.de>
* manual/libc-texinfo.sh: Add entry about free manuals.
* manual/contrib.texi (Contributors): Fix cross reference.
* manual/libc.texinfo (Copying): Include freemanuals.
* manual/Makefile (appendices): Add freemanuals.
* manual/freemanuals.texi: New file.
Patch by Brian Youmans <3diff@gnu.org>.
* manual/libm-err-tab.pl: Pretty print more platforms, print a
smaller table.
* manual/math.texi (Errors in Math Functions): Fix grammar, start
table on separate page.
Patch by Brian Youmans <3diff@gnu.org>.
2001-08-27 Ulrich Drepper <drepper@redhat.com>
* misc/syslog.c (vsyslog): Try a bit harder to use syslogd. If
the connection went down after we first used it try to connect
again and resend the message before printing to the console.
Reported by Coserea Gh. Tudor <tudore@tudore.gecadsoftware.com>.
2001-08-27 Jakub Jelinek <jakub@redhat.com>
* string/tst-strlen.c (main): Test strnlen (, -1) too.
* sysdeps/generic/strnlen.c (__strnlen): Fix for maxlens with top
bit set.
2001-08-27 Ulrich Drepper <drepper@redhat.com>
* iconv/strtab.c (searchstring): Use correct length for
comparison.
(strtabadd): Account total size correct if new string has old string as
substring.
2001-08-27 Andreas Jaeger <aj@suse.de>
* sysdeps/i386/fpu/libm-test-ulps (float): Add ulps for new tests.
* math/libm-test.inc (j0_test): Add extra tests.
* sysdeps/ieee754/ldbl-128/e_j0l.c (__ieee754_j0l): Use |x|,
not x, in Hankel approximation.
Patches by Stephen L Moshier.
* manual/message.texi (Advanced gettext functions): Change
description of plural forms for Slovak.
Reported by Marcel Telka <marcel@telka.sk>.
* manuaL/time.texi (Low-Level Time String Parsing): Fix description of
%z. Reported by C. Scott Ananian <cananian@lesser-magoo.lcs.mit.edu>.
2001-08-26 Jakub Jelinek <jakub@redhat.com>
* sysdeps/s390/s390-32/dl-machine.h (elf_machine_lazy_rel): Fix a
typo. Patch by Florian La Roche <laroche@redhat.com>.
2001-08-26 Ulrich Drepper <drepper@redhat.com>
2001-08-26 Ulrich Drepper <drepper@redhat.com>
* config.h.in: Add HAVE_Z_COMBRELOC.
* configure.in: Add test for -z combreloc.
* sysdeps/i386/dl-machine.h (elf_machine_rel): Minor cleanups and
optimizations. Use HAVE_Z_COMBRELOC to avoid generaton of
R_386_RELATIVE handling for ld.so startup.
2001-08-24 Ulrich Drepper <drepper@redhat.com>
* elf/rtld.c (print_statistics): Printf % after percent values.
* elf/dl-misc.c (_dl_debug_vdprintf): Implement %%.
* elf/dl-lookup.c (_dl_lookup_symbol): If we use the cache we
don't have to compute the hash value and initialize current_value.
Move reference_name variable to where it is needed.
(_dl_lookup_versioned_symbol): Likewise.