1998-03-18 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/opendir.c (__opendir): Don't block on FIFOs etc.
Optimize memmory handling.
* sysdeps/unix/closedir.c: Optmize memory handling.
1998-03-18 00:25 Tim Waugh <tim@cyberelk.demon.co.uk>
* posix/wordexp.c (parse_comm): Allow quoting inside $(...).
(parse_param): Fold in Andreas' fixes to do with when the end of
the parameter name has been reached, and quoting inside ${...}.
(parse_dollars): Fix differentiation between $(((1+3)*(4-2))) and
$((echo);(ls)).
1998-03-16 22:10 Zack Weinberg <zack@rabi.phys.columbia.edu>
* manual/maint.texi: Split out installation and contribution
sections to their own appendices. Misc cleanups.
* manual/install.texi: New file. Mention add-ons. Refer to FAQ.
* manual/contrib.texi: New file.
* manual/libc.texinfo: Pull in new appendices.
* manual/header.texi: Correct node pointer.
1998-03-17 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* manual/process.texi (Process Completion): Clarify return value
of waitpid a bit. Patch by Zack Weinberg. [PR libc/490]
1998-03-15 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* posix/wordexp-test.c: Add more tests.
(testit): Fix logic.
* posix/wordexp.c (exec_comm): In the child, redirect stderr to
/dev/null instead of closing it, close pipe. Always chop off all
trailing newlines. Kill and reap child before returning error.
(w_addword, parse_glob): Fix memory leak.
(wordexp): Fix dangling pointer problem.
1998-03-16 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-close.c (_dl_close): Correct and simplify unmapping.
* posix/wordexp-test.c (main): Fix little thinkos and typos.
* catgets/Makefile (CPPFLAGS): Change NLSPATH to also examine
directory index by only the language.
1998-03-16 13:02 Tim Waugh <tim@cyberelk.demon.co.uk>
* posix/wordexp-tst.sh: Store test results in the
${common_objpfx}posix directory.
* posix/wordexp-test.c: Remove temporary directory afterwards.
1998-03-15 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* libc.map: Export internal versions of cancelable functions.
1998-03-15 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makerules (MAKEFLAGS): Append `r'.
1998-03-15 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makeconfig: Define have-thread-library, shared-thread-library
and static-thread-library if a thread library is available. Don't
define rt.
* nscd/Makefile: Compile nscd if have-thread-library. Rename
nscd-routines to nscd-modules. Use shared-thread-library and
static-thread-library in dependencies.
* rt/Makefile: Only compile librt if have-thread-library is
defined.
* Makefile (subdirs): Always include rt subdir.
1998-03-15 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makeconfig ($(common-objpfx)gnu/lib-names.h): Add dummy command.
1998-03-14 21:55 Ulrich Drepper <drepper@cygnus.com>
* configure.in: Recognize variations for 32 MIPS processors.
Don't assume ELF systems always have .weak, test for .weakext.
1998-03-14 11:47 H.J. Lu <hjl@gnu.org>
* elf/dl-close.c (_dl_close): Stop unmapping the segments after
unmapping the last loaded segment.
1998-03-14 15:54 Ulrich Drepper <drepper@cygnus.com>
* configure.in: Set base_os for Irix6.
Correct test for .weakext.
1998-03-14 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* elf/dl-deps.c (_dl_map_object_deps): Add first parameter
(new_line) to _dl_debug_message call.
* locale/programs/linereader.c (lr_token): Return EOF token at EOF.
1998-03-14 00:52 Tim Waugh <tim@cyberelk.demon.co.uk>
* posix/wordexp.c (parse_param): Perform field-splitting after
expanding positional parameter.
* posix/wordexp-tst.sh: Test that field-splitting is performed
after expanding positional parameter.
* posix/wordexp.c (parse_param): Fixed memory leak in
field-splitting after parameter expansion.
1998-03-14 Ulrich Drepper <drepper@cygnus.com>
* locale/programs/linereader.c (lr_token): Return EOF token at
EOF.
(get_toplvl_escape): Correctly terminate loop at EOF.
Patch by Cristian Gafton <gafton@redhat.com>.
1998-03-13 16:55 Ulrich Drepper <drepper@cygnus.com>
* string/tester.c (test_strpbrk): Add more strpbrk tests.
(test_strsep): Likewise. Correct horrible bugs.
* string/bits/string2.h (strcspn): Optimize also reject string of
length 2 and 3.
(strspn): Likewise.
(strpbrk): Likewise.
(strsep): Likewise. Correct bug with successive separators and
separators at the end of the string.
* sysdeps/generic/strsep.c: Correct bug with successive separators
and separators at the end of the string.
1998-03-13 13:11 Tim Waugh <tim@cyberelk.demon.co.uk>
* posix/wordexp.c (parse_param): Positional parameters ($1, $2
etc) now handled, as well as $$ (pid).
* posix/Makefile (tests): Execute wordexp-test.sh for `make check'.
(distribute): Add wordexp-tst.sh.
* posix/wordexp-tst.sh: New file.
* posix/wordexp.c (parse_param): $# (or ${#}) expands to the
number of positional parameters. Renamed substitute_length to
seen_hash.
Don't free(env) is env is NULL.
1998-03-13 16:50 Ulrich Drepper <drepper@cygnus.com>
* libc.map: Add pthread_attr_init to GLIBC_2.1.
1998-03-13 15:01 Ulrich Drepper <drepper@cygnus.com>
* gmon/gmon.c: Allow GMON_OUT_PREFIX variable to specify filename
for output file replacing gmon.out.
Patch by Dean Gaudet <dgaudet@arctic.org>.
1998-03-12 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/dl-misc.c (_dl_debug_message): Fix printing of pid. Clean
up namespace. Optimize finding end of line.
1998-03-12 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/rtld.c (process_envvars): Ignore LD_DEBUG_OUTPUT if running
securely. Optimized.
(process_dl_debug): Add ':' to list of separators. Optimized.
1998-03-13 10:25 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
isless, islessequal, islessgreater, isunordered): Return zero or
one.
Fri Mar 13 10:25:26 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/fpu/bits/mathinline.h (isgreater, isgreaterequal,
isless, islessequal, islessgreater, isunordered): Return zero or
one.
1998-03-12 13:11 Tim Waugh <tim@cyberelk.demon.co.uk>
* posix/wordexp-test.c: More tests.
(main): Set up arena for pathname expansion tests (in a temporary
directory).
(testit): Don't check word count or word vector if return value is
non-zero.
* posix/wordexp.c (exec_comm): Always chop off terminating
linefeed (just like bash does).
(parse_param): Change lots of occurrences of "if (!*env)" to "if
(!env || !*env)".
(parse_param): For assignment inside parameter expansion, use all
expanded words in assignment rather than just the first.
(parse_param): Corrected return value for parameter expansion of
an unset variable when WRDE_UNDEF is in effect.
(parse_dollars): Don't field-split if quoted.
(wordexp): Opening brace character isn't allowed unquoted.
1998-03-12 Ulrich Drepper <drepper@cygnus.com>
* elf/dlerror.c: Fix concurrency problems with error string and
number.
* elf/dl-deps.c (_dl_map_object_deps): Print debug info when
filter/auxiliary are being loaded.
1998-03-12 14:24 Ulrich Drepper <drepper@cygnus.com>
* elf/dlerror.c (last_object_name): Removed.
(dlerror): Don't use last_object_name.
(_dl_error_run): Omit second argument to _dl_catch_error.
* elf/dl-error.c (struct catch): Remove objname member.
(_dl_signal_error): Construct string including objname when given.
(_dl_catch_error): Remove objname handling.
* elf/link.h (_dl_catch_error): Fix prototype and comment.
* elf/rtld.c (dl_main): Call _dl_catch_error correctly.
* elf/dl-deps.c (_dl_map_objet_deps): Likewise.
* nss/nsswitch.c (nss_dlerror_run): Likewise.
* iconv/gconv_dl.c (dlerror_run): Likewise.
[Corrects PR libc/501].
1998-03-11 15:27 Ulrich Drepper <drepper@cygnus.com>
* elf/rtld.c: Update help message.
Install link maps for preloaded objects using main_map as loader.
* elf/dl-misc.c: Use __libc_write instead of __write for debugging.
* elf/dl-profile.c: Likewise.
* elf/dlsym.c: Little optimization.
* elf/dlvsym.c: Likewise.
1998-03-11 14:56 Ulrich Drepper <drepper@cygnus.com>
* posix/wordexp-test.c: Move test for parameter list at the very
beginning.
1998-03-11 00:16 Tim Waugh <tim@cyberelk.demon.co.uk>
* posix/wordexp.c (wordexp): Set we_wordc to zero initially unless
WRDE_REUSE flag is set.
(parse_param): Allow `*', `@', and numbers in parameter names.
(parse_dollars): Differentiate between arithmetic expansion and a
command substitution that starts immediately with a sub-shell
(like ``$((1+3))'' as opposed to ``$((echo);(ls))'').
(parse_param): Memory allocated with __alloca in a block was
referenced outside that block. Adjusted to use malloc/free.
(parse_param): Adjusted field-splitting algorithm so that there is
not necessarily a field split at the end of a parameter expansion.
1998-03-10 19:52 Tim Waugh <tim@cyberelk.demon.co.uk>
* posix/wordexp.c (wordexp): If about to return WRDE_NOSPACE,
don't free words that have already been allocated.
(parse_param): A dollar sign on its own will never have a pattern
associated with it (like "${HOME%%/}" has), so don't try to free it.
(parse_glob): Attempt to glob when an unquoted `[' is found
(rather than an unquoted '{' (!)). Also for unquoted '?'.
(parse_glob): Sorted out quoting in a glob-able word.
(parse_param): Added $* and $@ handling.
1998-03-11 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Use
_dl_debug_message.
1998-03-12 Matthias Urlichs <smurf@noris.de>
* elf/dl-misc.c: Default for debug output should be stderr.
* elf/dl-misc.c: Spurious garbage bytes after the PID in debug output.
* elf/dl-lookup.c: reference_name may be NULL or empty.
1998-03-11 10:30 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* aclocal.m4 (LIBC_PROG_FOO_GNU): Fix order of redirection.
1998-03-11 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/Dist: Add scsi/scsi.h.
* sysdeps/unix/sysv/linux/scsi/sg.h: Include features.h.
1998-03-10 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/scsi/scsi.h: New file.
* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Install it.
1998-03-11 10:30 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
init stuff.
Wed Mar 11 10:30:53 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/elf/start.S: Let __libc_start_main do most of the
init stuff.
1998-03-10 Ulrich Drepper <drepper@cygnus.com>
* libio/iovdprintf.c (_IO_vdprintf): Set _IO_DELETE_DONT_CLOSE
flag.
* misc/syslog.c (vsyslog): Don't try to send if not connected to
syslog daemon.
(closelog_internal): Don't do anything if not connected.
1998-03-10 17:54 Ulrich Drepper <drepper@cygnus.com>
* libc.map: Add _dl_debug_message.
* elf/dl-misc.c: Make _dl_debug_message a function. Print the PID
before every line.
* elf/fini.c: Correctly use new _dl_debug_message function.
* elf/init.c: Likewise.
* elf/dl-lookup.c: Likewise.
* sysdeps/unix/sysv/linux/libc-start.c: Likewise.
* elf/dl-load.c: Likewise. Add more debugging prints.
* elf/dl-reloc.c: Likewise.
* elf/dl-version.c: Likewise.
* elf/dl-support.c: Add variables for debugging.
* elf/rtld.c: Likewise. Recognize new debug options.
* elf/link.h: Declare new variables.
* elf/dl-deps.c (_dl_map_object_deps): Little optimizations.
* sysdeps/unix/sysv/linux/sys/quota.h: Extract information from
kernel headers. Patch by a sun <asun@saul7.u.washington.edu>.
1998-03-11 00:16 Tim Waugh <tim@cyberelk.demon.co.uk>
* posix/wordexp-test.c (command_line_test): New function to allow
testing of specific cases from the command-line.
1998-03-10 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-init.c (_dl_init_next): Print nicer messages.
* elf/dl-fini.c (_dl_fini): Likewise.
* sysdeps/unix/sysv/linux/libc-start.c (__libc_start_main): Likewise.
1998-03-10 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-lookup.c (_dl_lookup_versioned_symbol): Print version
symbol in debug message.
(_dl_lookup_versioned_symbol_skip): Likewise.
* sysdeps/unix/readdir_r.c: Zero out *result on EOF.
* manual/filesys/texi: Document this.
0600. Reported by Greg Alexander <galexand@sietch.bloomington.in.us>.
1998-03-10 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/posix/mkstemp.c (mkstemp): Open temporary file mode
0600. Reported by Greg Alexander <galexand@sietch.bloomington.in.us>.
1998-03-09 08:21 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/chown.c: Moved to ...
* sysdeps/unix/sysv/linux/i386/chown.c: ...here.
* sysdeps/unix/sysv/linux/i386/chown.c: Correct versioning information.
* libc.map: Add chown to GLIBC_2.1.
* sysdeps/unix/sysv/linux/i386/syscalls.list: Add s_chown here.
* sysdeps/unix/sysv/linux/syscalls.list: Remove s_chown here.
1998-03-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/generic/ffs.S: Rename function to __ffs and make ffs a
weak alias.
* sysdeps/alpha/ffs.c: Likewise.
* sysdeps/am29k/ffs.c: Likewise.
* sysdeps/i386/ffs.c: Likewise.
* sysdeps/i960/ffs.c: Likewise.
* sysdeps/m68k/ffs.c: Likewise.
* sysdeps/m88k/ffs.c: Likewise.
* sysdeps/powerpc/ffs.c: Likewise.
* sysdeps/rs6000/ffs.c: Likewise.
* sysdeps/vax/ffs.s: Likewise.
* string/string.h: Declare __ffs.
* libc.map: Export it.
* elf/dl-profile.c (_dl_start_profile): Use __ffs instead of
__builtin_ffs, which is not guaranteed to be namespace clean.
1998-03-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/sprof.c: Rewrite symbol handling to use the normal symbol
table, which is much more likely to exist than debugging symbols.
(printsym): Remove const.
(load_shobj): Don't use _dl_pagesize. Fix mapping of section
header table.
* libc.map: Export __profile_frequency, used by elf/sprof, to
avoid infinite recursion during startup.
1998-03-09 12:16 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1998-03-08 Ulrich Drepper <drepper@cygnus.com>
* elf/rtld.c (process_envvars): Also recognize LD_LIBRARY_PATH,
LD_PRELOAD, and LD_VERBOSE.
(dl_main): Use global variables set by process_envvars instead of
calling getenv.
* elf/dl-load.c (_dl_init_paths): Don't call getenv to get
LD_LIBRARY_PATH value, this comes with the parameter.
1998-03-08 22:55 Ulrich Drepper <drepper@cygnus.com>
* elf/rtld.c (dl_main): Delay initialization of path structure if
the dynamically linker is invoked implicitly until we read the
dynamic section.
1998-03-07 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/chown.c: New file for compatibility of
Linux 2.0 and 2.1.
* sysdeps/unix/sysv/linux/syscalls.list: Add chown.
1998-03-08 14:58 Ulrich Drepper <drepper@cygnus.com>
* Makeconfig (nisobjdir): Set to path to nis directory.
(rpath-link): Add nisobjdir.
Patch by Sven Verdoolaege <skimo@kotnet.org>.
* elf/Makefile: Pretty print.
* elf/dl-lookup.c: Include unistd.h.
* elf/dl-runtime.c: Likewise.
* localedata/Makefile (test-srcs): Add tst-rpmatch.
(distribute): Add tst-rpmatch.sh.
(tests): Add tst-rpmatch to dependency list and run tst-rpmatch.sh.
New tests for rpmatch function by
Jochen Hein <jochen.hein@delphi.central.de>.
* localedata/tst-rpmatch.c: New file.
* localedata/tst-rpmatch.sh: New file.
* localedata/locales/de_DE: Correct yesexpr and noexpr.
* localedata/locales/de_AT: Likewise.
* posix/getopt.c: Update contact address.
* posix/getopt1.c: Pretty print.
* sysdeps/generic/libc-start.c: Do most of the initialization now
here instead of in start.S.
* sysdeps/unix/sysv/linux/libc-start.c: Likewise.
* sysdeps/i386/elf/start.S: Remove most of the initialization code.
* sysdeps/unix/sysv/linux/i386/profil-counter.h: No need for
profil_counter to be public.
1998-03-08 13:06 Tim Waugh <tim@cyberelk.demon.co.uk>
* posix/wordexp.c (parse_arith): Now works for negative numbers too.
(parse_param): Coded parameter length expansion (${#var}).
(parse_param): Handling for "=", "+", "-", and the ":" versions added.
(parse_param): Cleaned up (fixed) error handling.
* posix/wordexp-test.c: IFS now includes non-whitespace character
(comma). Added more tests.
1998-03-06 17:04 Ulrich Drepper <drepper@cygnus.com>
* libc.map: Add _dl_debug_impcalls, _dl_debug_fd, _dl_sysdep_output,
__libc_start_main.
* csu/Makefile (routines): Add libc-start.
* elf/dl-error.c: Remove declaration of _dl_argv. Include <unitsd.h>.
* elf/dl-lookup.c: Likewise.
* elf/dl-version.c: Likewise.
* sysdeps/i386/dl-machine.h: Likewise.
* elf/link.h: Declare _dl_argv, _dl_debug_fd.
Declare _dl_sysdep_output. Make _dl_sysdep_fatal, _dl_sysdep_error and
_dl_sysdep_message macros which use _dl_sysdep_output.
* elf/dl-fini.c: Write out which destructor is called while debugging.
* elf/dl-init.c: Likewise for constructor.
* elf/dl-load.c: Use _dl_debug_message instead of _dl_sysdep_message.
* elf/dl-misc.c: Remove _dl_sysdep_fatal, _dl_sysdep_error and
_dl_sysdep_message. Add _dl_sysdep_output.
* elf/rtld.c: Recognize LD_DEBUG_OUTPUT. Set _dl_debug_fd if
this file can be opened.
For LD_DEBUG=libs also set _dl_debug_impcalls.
* sysdeps/generic/dl-cache.c: Include unistd.h.
* sysdeps/generic/libc-start.c: New file.
* sysdeps/i386/elf/start.S: Don't call main directly, call
* sysdeps/unix/sysv/linux/libc-start.c: New file.
__libc_start_main instead.
* elf/Makefile ($(objpfx)ld.so): Add $(load-map-file) as dependency.
1998-03-06 12:42 Ulrich Drepper <drepper@cygnus.com>
* argp/argp.h (struct argp): Add new field domain.
* argp/argp-help.c: Change all gettext calls to dgettext and use
domain field from appropriate argp in call.
* argp/argp-parse.c: Likewise.
1998-03-06 11:35 Ulrich Drepper <drepper@cygnus.com>
* posix/wordexp-test.c: Change testsuite so that it can run even
for ~root != /root.
1998-03-06 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* math/libm-test.c (catanh_test): Change epsilon for gcc 2.8.1.
1998-03-05 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
Don't store into global errno if we already store through
__errno_location.
* sysdeps/unix/i386/sysdep.S: Likewise.
* sysdeps/unix/alpha/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/brk.S: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise. Add
missing return to SYSCALL_ERROR_HANDLER for (!_LIBC_REENTRANT &&
PIC).
1998-03-05 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/generic/sysdep.h (L): Remove definition.
* sysdeps/i386/sysdep.h (L): Define it here instead.
1998-03-05 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* nss/getXXbyYY_r.c: Check __nss_not_use_nscd_* variable for
running nscd.
* nscd/nscd_getgr_r.c: Set __nss_not_use_nscd_group variable.
* nscd/nscd_getpw_r.c: Set __nss_not_use_nscd_passwd variable.
* nscd/nscd_proto.h: Declare __nss_not_use_nscd_* variables.