The annotations for sigabbrev_np, sigdescr_np, strerrordesc_np,
strerrorname_np are not preliminary. These functions were
added precisely because they are AS-safe.
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
The strerrorname_np returns error number name (e.g. "EINVAL" for EINVAL)
while strerrordesc_np returns string describing error number (e.g
"Invalid argument" for EINVAL). Different than strerror,
strerrordesc_np does not attempt to translate the return description,
both functions return NULL for an invalid error number.
They should be used instead of sys_errlist and sys_nerr, both are
thread and async-signal safe. These functions are GNU extensions.
Checked on x86-64-linux-gnu, i686-linux-gnu, powerpc64le-linux-gnu,
and s390x-linux-gnu.
Tested-by: Carlos O'Donell <carlos@redhat.com>
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
* manual/errno.texi (EOWNERDEAD, ENOTRECOVERABLE): Remove errno
values from Linux-specific section now that it is in the GNU section.
* sysdeps/gnu/errlist.c: Regenerate.
* hurd/Makefile (routines): Add hurdlock.
* hurd/Versions (GLIBC_PRIVATE): Added new entry to export the above
interface.
(HURD_CTHREADS_0.3): Remove __libc_getspecific.
* hurd/hurdpid.c: Include <lowlevellock.h>
(_S_msg_proc_newids): Use lll_wait to synchronize.
* hurd/hurdsig.c: (reauth_proc): Use __mutex_lock and __mutex_unlock.
* hurd/setauth.c: Include <hurdlock.h>, use integer for synchronization.
* mach/Makefile (lock-headers): Remove machine-lock.h.
* mach/lock-intern.h: Include <lowlevellock.h> instead of
<machine-lock.h>.
(__spin_lock_t): New type.
(__SPIN_LOCK_INITIALIZER): New macro.
(__spin_lock, __spin_unlock, __spin_try_lock, __spin_lock_locked,
__mutex_init, __mutex_lock_solid, __mutex_unlock_solid, __mutex_lock,
__mutex_unlock, __mutex_trylock): Use lll to implement locks.
* mach/mutex-init.c: Include <lowlevellock.h> instead of <cthreads.h>.
(__mutex_init): Initialize with lll.
* manual/errno.texi (EOWNERDEAD, ENOTRECOVERABLE): New errno values.
* sysdeps/mach/Makefile: Add libmachuser as dependencies for libs
needing lll.
* sysdeps/mach/hurd/bits/errno.h: Regenerate.
* sysdeps/mach/hurd/cthreads.c (__libc_getspecific): Remove function.
* sysdeps/mach/hurd/bits/libc-lock.h: Remove file.
* sysdeps/mach/hurd/setpgid.c: Include <lowlevellock.h>.
(__setpgid): Use lll for synchronization.
* sysdeps/mach/hurd/setsid.c: Likewise with __setsid.
* sysdeps/mach/bits/libc-lock.h: Include <tls.h> and <lowlevellock.h>
instead of <cthreads.h>.
(_IO_lock_inexpensive): New macro
(__libc_lock_recursive_t, __rtld_lock_recursive_t): New structures.
(__libc_lock_self0): New declaration.
(__libc_lock_owner_self): New macro.
(__libc_key_t): Remove type.
(_LIBC_LOCK_INITIALIZER): New macro.
(__libc_lock_define_initialized, __libc_lock_init, __libc_lock_fini,
__libc_lock_fini_recursive, __rtld_lock_fini_recursive,
__libc_lock_lock, __libc_lock_trylock, __libc_lock_unlock,
__libc_lock_define_initialized_recursive,
__rtld_lock_define_initialized_recursive,
__libc_lock_init_recursive, __libc_lock_trylock_recursive,
__libc_lock_lock_recursive, __libc_lock_unlock_recursive,
__rtld_lock_initialize, __rtld_lock_trylock_recursive,
__rtld_lock_lock_recursive, __rtld_lock_unlock_recursive
__libc_once_define, __libc_mutex_unlock): Reimplement with lll.
(__libc_lock_define_recursive, __rtld_lock_define_recursive,
_LIBC_LOCK_RECURSIVE_INITIALIZER, _RTLD_LOCK_RECURSIVE_INITIALIZER):
New macros.
Include <libc-lockP.h> to reimplement libc_key* with pthread_key*.
* hurd/hurdlock.c: New file.
* hurd/hurdlock.h: New file.
* mach/lowlevellock.h: New file
The current glibc manual is ambiguous about the errno value on success
and suggests that it is left unchanged. Some functions might and
sometimes do change the errno value, however they never set it to 0.
This patch from Zack Weinberg clarifies this section of the manual.
Changelog:
[BZ #22615]
* manual/errno.texi (Checking for Errors): Explicitly say that errno
might be set on success.
The Summary is now generated from @standards, and syntax-checking is
performed. If invalid @standards syntax is detected, summary.pl will
fail, reporting all errors. Failure and error reporting is disabled
for now, however, since much of the manual is still incomplete
wrt. header and standards annotations.
Note that the sorting order of the Summary has changed; summary.pl
respects the locale, like summary.awk did, but the use of LC_ALL=C is
introduced in the Makefile. Other notable deviations are improved
detection of the annotated elements' names, which are used for
sorting, and improved detection of the @node used to reference into
the manual. The most noticeable difference in the rendered Summary is
that entries may now contain multiple lines, one for each header and
standard combination.
summary.pl accepts a `--help' option, which details the expected
syntax of @standards. If errors are reported, the user is directed to
this feature for further information.
* manual/Makefile: Generate summary.texi with summary.pl.
Force use of the C locale. Update Perl dependency comment.
* manual/header.texi: Update reference to summary.awk.
* manual/macros.texi: Refer authors to `summary.pl --help'.
* manual/summary.awk: Remove file.
* manual/summary.pl: New file. Generate summary.texi, and
check for @standards-related syntax errors.
* manual/argp.texi: Convert header and standards @comments to
@standards.
* manual/arith.texi: Likewise.
* manual/charset.texi: Likewise.
* manual/conf.texi: Likewise.
* manual/creature.texi: Likewise.
* manual/crypt.texi: Likewise.
* manual/ctype.texi: Likewise.
* manual/debug.texi: Likewise.
* manual/errno.texi: Likewise.
* manual/filesys.texi: Likewise.
* manual/getopt.texi: Likewise.
* manual/job.texi: Likewise.
* manual/lang.texi: Likewise.
* manual/llio.texi: Likewise.
* manual/locale.texi: Likewise.
* manual/math.texi: Likewise.
* manual/memory.texi: Likewise.
* manual/message.texi: Likewise.
* manual/pattern.texi: Likewise.
* manual/pipe.texi: Likewise.
* manual/process.texi: Likewise.
* manual/resource.texi: Likewise.
* manual/search.texi: Likewise.
* manual/setjmp.texi: Likewise.
* manual/signal.texi: Likewise.
* manual/socket.texi: Likewise.
* manual/startup.texi: Likewise.
* manual/stdio.texi: Likewise.
* manual/string.texi: Likewise.
* manual/sysinfo.texi: Likewise.
* manual/syslog.texi: Likewise.
* manual/terminal.texi: Likewise.
* manual/threads.texi: Likewise.
* manual/time.texi: Likewise.
* manual/users.texi: Likewise.
The @errno macro is extended to render the canonical error string in
every documented errno error. Redundant entries and "???" are
removed. Sixty-six errors now at least contain the error string as
the description, where no description (or "???") existed before.
* manual/errno.texi: Remove redundant error strings.
* manual/macros.texi (@errno): Render the error string in
every description.
errno.texi documents error macros, their values, and error strings in
Texinfo @comments, some of which are also used for @standards. The
purpose of this commit is to separate the standards from the error
strings so that both the @standards conversion script picks up clean
@standards and the errno documentation framework is improved.
The error names, values, and messages are consolidated in a new custom
macro, @errno. It is not clear that scripts within the sources rely
on the special Texinfo @comment-based format to generate files used
throughout the library, so the definition of @errno in macros.texi now
provides a comment indicating the dependency. The dependent scripts
are updated to use @errno, which also simplifies them a bit. The
files those scripts generate were verified to be unchanged.
The @errno macro is not visibly rendered in any way at this time, but
it does use an @cindex command to add the error string to the Concept
Index, to facilitate searching on error messages.
* manual/errno.texi: Convert @comment-based errno
documentation to @errno.
* manual/macros.texi (@errno): New macro. Consolidate errors,
their values, and messages, adding the error string to the
Concept Index. Provide a warning in the comment about
external (to the manual) dependencies.
* sysdeps/gnu/errlist.awk: Use @errno instead of @comments.
* sysdeps/mach/hurd/errnos.awk: Likewise.
The manual gives "an example showing how to handle failure to open a
file correctly." The example function, open_sesame, uses the
newly-introduced strerror function and errno and
program_invocation_short_name variables. It fails to specify GNU
extensions, however, so attempts to use it in the following way:
int main (void) {open_sesame ("badname");}
fail during compilation with "error: ‘program_invocation_short_name’
undeclared", indicating the example is incomplete. The presence of
"#include"s suggest everything neccesary for the function to work should
be present. For completeness, the example is lacking the following line:
#define _GNU_SOURCE
as the declarations of program_invocation_*name in errno.h are wrapped
in an "#ifdef __USE_GNU" conditional.
The documentation of the variables is also expanded, adding that their
definition lies in errno.h and noting specifically they are GNU
extensions.
EKEYREVOKED, EKEYREJECTED.
* sysdeps/unix/sysv/linux/Versions (libc: GLIBC_2.3.4): New errlist.
* sysdeps/gnu/errlist.c: Regenerated
* sysdeps/gnu/errlist-compat.awk: Don't bail if Versions gives a count
higher than ERR_MAX reports. Instead, emit a #define ERR_MAX.
* sysdeps/gnu/Makefile ($(objpfx)errlist-compat.h): New target.
(generated): Add errlist-compat.h.
* sysdeps/gnu/errlist.awk: Make output #include <errlist-compat.h> to
define ERR_MAX and use that for table size.
* sysdeps/mach/hurd/bits/errno.h: Regenerated.
* sysdeps/gnu/Versions: New file.
* sysdeps/unix/sysv/linux/Versions (libc: GLIBC_2.1): Remove
_sys_errlist; sys_errlist; _sys_nerr; sys_nerr; from here.
* sysdeps/gnu/Makefile ($(..)sysdeps/gnu/errlist-compat.c): New target.
($(objpfx)errlist.d): Depend on $(..)sysdeps/gnu/errlist-compat.c.
* sysdeps/gnu/errlist.awk: Make output define _sys_errlist_internal
and _sys_nerr_internal instead of anything else. Make it include
"errlist-compat.c" if [!NOT_IN_libc && !ERRLIST_NO_COMPAT].
Make it emit some asm magic if [EMIT_ERR_MAX].
* sysdeps/gnu/errlist.c: Regenerated.
* sysdeps/gnu/errlist-compat.awk: New file.
* sysdeps/gnu/errlist-compat.c: New file (generated).
* sysdeps/mach/hurd/errlist.c (ERRLIST_NO_COMPAT): New macro.
(_sys_errlist_internal): Define this as a macro for _hurd_errlist.
(_sys_nerr_internal): Define this is a macro for _hurd_nerr.
(SYS_ERRLIST, SYS_NERR): Macros removed.
(sys_nerr, _sys_nerr): Remove these weak aliases.
* sysdeps/unix/sysv/linux/errlist.c: File removed.
* sysdeps/unix/sysv/linux/errlist.h: File removed.
* sysdeps/unix/sysv/linux/arm/errlist.c: File removed.
* include/libc-symbols.h (declare_symbol): New macro.
* config.h.in (ASM_TYPE_DIRECTIVE_PREFIX): New #undef.
* configure.in: New check to define it.
* configure: Regenerated.
* sysdeps/unix/bsd/poll.c (__poll): Add code to extend sets if any
passed file descriptor exceeds the size determined by
getdtablesize.
* sysdeps/unix/sysv/linux/cmsg_nxthdr.c (__cmsg_nxthdr): Update
from inline version in bits/socket.h.
* sysdeps/unix/sysv/linux/bits/socket.h: Define __cmsg_nxthdr as
inline function only is __USE_EXTERN_INLINES is defined.
* time/strftime.c (my_strftime): Make code a bit clearer.
Patch by Paul Eggert <eggert@twinsun.com>.
by removing SIG_IGN handler for SIGCHLD if necessary.
1998-06-01 Gordon Matzigkeit <gord@profitpress.com>
* hurd/Makefile (routines): Add cthreads.
1998-05-31 Mark Kettenis <kettenis@phys.uva.nl>
* login/login.c (login): Let pututline take care of finding the
positin to insert the UTMP entry. This corrects a bug where ssh
was not reusing UTMP entries marked as DEAD_PROCESS.
Reported by Herbert Xu <herbert@gondor.apana.org.au>.
1998-05-31 Mark Kettenis <kettenis@phys.uva.nl>
* login/Makefile (tests): New variable, add tst-utmp and
tst-utmpx.
* login/tst-utmp.c: New file.
* login/tst-utmpx.c: New file.
1998-06-01 Gordon Matzigkeit <gord@profitpress.com>
* sysdeps/mach/hurd/errlist.c (sys_nerr, _sys_nerr): Make weak
aliases for _hurd_nerr, for programs that don't use sys_errlist,
but need sys_err.
1998-05-31 Mark Kettenis <kettenis@phys.uva.nl>
* sysdeps/generic/updwtmpx.c: Rename function to updwtmpx.
* libc.map: Add updwtmpx and utmpxname to GLIBC_2.1.
1998-05-31 Mark Kettenis <kettenis@phys.uva.nl>
* sysdeps/mach/hurd/read.c: Rename function to __libc_read and
make __read a weak alias. Use ANSI-style function definition.
* sysdeps/mach/hurd/write.c: Likewise.
1998-05-31 Mark Kettenis <kettenis@phys.uva.nl>
* sysdeps/mach/hurd/err_hurd.sub: Use _hurd_errlist instead of
_sys_errlist.
1998-05-30 Mark Kettenis <kettenis@phys.uva.nl>
* sysdeps/mach/hurd/Makefile ($(objpfx)librtld.os):
Renamed from librtld.so.
1998-06-02 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* libc.map: Remove _IO_getline_info which was erroneously
introduced in section GLIBC_2.0.
Noticed by Horst von Brand <vonbrand@sleipnir.valparaiso.cl>.
1998-06-01 Gordon Matzigkeit <gord@profitpress.com>
* sysdeps/generic/socket.c (__socket): Renamed from socket, and
created a weak alias.
* sysdeps/mach/hurd/socket.c (__socket): Likewise.
1998-05-31 Gordon Matzigkeit <gord@profitpress.com>
* sysdeps/mach/hurd/ftruncate.c (__ftruncate): Rename from old
ftruncate function, and create a weak alias to ftruncate.
1998-06-01 Gordon Matzigkeit <gord@profitpress.com>
* grp/fgetgrent_r.c: Use &errno instead of __errno_location ().
* inet/getnetgrent_r.c: Likewise.
* nss/getXXbyYY_r.c: Likewise.
* nss/getXXent_r.c: Likewise.
* pwd/fgetpwent_r.c: Likewise.
* shadow/sgetspent_r.c: Likewise.
* shadow/fgetspent_r.c: Likewise.
* sunrpc/publickey.c: Likewise.
1998-06-01 Gordon Matzigkeit <gord@profitpress.com>
* hurd/libhurduser.map: New file.
* mach/libmachuser.map: Likewise.
* libc.map: Add Hurd-specific functions to version 2.1.
Add __flshfp and __fillbf.
1998-05-30 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* manual/signal.texi (Basic Signal Handling): Fix typo.
* manual/errno.texi (Error Codes): Likewise.
1998-06-02 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/netipx/ipx.h: Include <bits/sockaddr.h>
instead of <sys/socket.h>.
Patch by NIIBE Yutaka <gniibe@mri.co.jp>
* sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c (DL_FIND_ARG_COMPONENTS):
Finally make it working.
Patch by Mark Hatle <fray@kernel.crashing.org>.
1998-03-22 Paul Eggert <eggert@twinsun.com>
* posix/regex.c: Include <wchar.h> before <wctype.h>, to work around
a Solaris 2.6 bug.
1998-02-10 23:57 Ulrich Drepper <drepper@happy.cygnus.com>
* misc/tst-efgcvt.c: Add more tests.
* misc/efgcvt_r.c: Correct result for above new tests.
1998-02-06 17:22 H.J. Lu <hjl@gnu.org>
* misc/efgcvt_r.c (fcvt_r, ecvt_r): Correctly handle
NDIGIT <= 0.
1998-02-10 16:48 Philip Blundell <pb@nexus.co.uk>
* Makerules (install-no-libc.a-nosubdir): Don't install-bin (etc)
if the programs weren't built.
1998-02-09 10:12 Philip Blundell <pb@nexus.co.uk>
* sysdeps/libm-ieee754/s_exp2.c (__ieee754_exp2): If we don't have
FE_TONEAREST, soldier on regardless and do the best we can.
* sysdeps/libm-ieee754/s_exp2f.c (__ieee754_exp2f): likewise.
1998-02-5 17:20 Philip Blundell <pb@nexus.co.uk>
* sysdeps/standalone/filedesc.h: Define __need_FOPEN_MAX, not
_STDIO_H, before including <bits/stdio_lim.h>.
* sysdeps/standalone/arm/bits/errno.h (EOVERFLOW): Added.
* io/fts.c (fts_build): Don't try to use d_type if it doesn't
exist.
* sysdeps/arm/sys/ucontext.h: New file.
1998-02-04 10:11 Philip Blundell <pb@nexus.co.uk>
* manual/stdio.texi (Formatted Output Functions): Explicitly say
that the return value from snprintf() does not count the
terminating NUL as a character.
1998-02-10 16:57 Ulrich Drepper <drepper@happy.cygnus.com>
* manual/users.texi: Rewrite to describe correct POSIX behaviour,
add description for sete[ug]id and general cleanup.
Patch by Zack Weinberg <zack@rabi.phys.columbia.edu>.
1998-01-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makefile (parent-clean): Don't remove makefile fragments here.
(postclean): New variable.
(clean): Remove makefile fragments here.
(realclean distclean): Likewise. Pass sysdep-subdirs to sub-make.
(generated): Add isomac and isomanc.out.
* Makeconfig ($(common-objpfx)soversions.mk): Don't generate if
avoid-generated is set.
(postclean-generated): Add soversion.mk.
($(common-objpfx)version.mk): Don't include if avoid-generated is
set.
* Makerules: Still need to include $(+sysdir_pfx)sysd-Makefile if
avoid-generated is set.
(common-generated): Add libc.so and libc.so$(libc.so-version).
(generated): Add versioned libraries.
(common-mostlyclean): Also remove %.so and %_pic.a.
* csu/Makefile (generated): Add abi-tag.h.
* db2/Makefile (extra-objs): Add getlong.o.
* elf/Makefile (generated): Add ld.so, ldd and
$(rtld-installed-name).
(others): Add ldconfig here instead of ldconfig.o to extra-objs.
* malloc/Makefile (generated): Add mtrace.
* po/Makefile: Don't include version.mk, not needed any more.
* sunrpc/Makefile (generated): Add rpc-proto.d and rpcgen.
* sysdeps/unix/Makefile: Fix local_lim.h -> bits/local_lim.h,
syscall.h -> sys/syscall.h.
(common-generated): Add s-proto.d.
(postclean-generated): Add sysd-syscalls.
* localedata/Makefile (test-output): Add all output files.
(generated): Add test-input and test-output.
(generated-dirs): Add all the dirs.
1998-01-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makefile (test-output, generated, generated-dirs): New
variables.
1998-02-10 16:57 Ulrich Drepper <drepper@happy.cygnus.com>
* resolv/nss_dns/dns-host.c: Various code cleanups.
1998-02-09 08:10 H.J. Lu <hjl@gnu.org>
* resolv/gethnamaddr.c (getanswer): Fix the PTR/CNAME bug.
From Philip Blundell <pb@nexus.co.uk>.
* resolv/nss_dns/dns-host.c (getanswer_r): Ditto.
1998-02-08 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* libc.map: Add .rem, .div, .mul, .udiv, .umul, .urem for Sparc.
Suggested by debian/sparc porters.
1998-02-07 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* misc/tst-efgcvt.c: Totally rewritten, added a lot of new tests
for ecvt and fcvt.
1998-02-10 16:32 Ulrich Drepper <drepper@happy.cygnus.com>
* sysdeps/unix/sysv/linux/ptsname.c (__ptsname_r): Use __xstat and
__fxstat instead of stat and fstat. Use namespace clean __stpcpy.
* signal/signal.h: Always define sigset_t if __need_sigset_t is
defined even if __USE_POSIX is not defined.
1998-02-02 20:51 Zack Weinberg <zack@rabi.phys.columbia.edu>
* sysdeps/unix/sysv/linux/ptsname.c (__ptsname_r): Correct last patch
to support obsolete tty major numbers correctly.
1998-02-02 08:47 H.J. Lu <hjl@gnu.org>
* login/Makefile ($(inst_libexecdir)/pt_chown): Make the target
directory first and ignore install error.
* sysdeps/unix/sysv/linux/ptsname.c (__ptsname_r): Substract
128 from ptyno and fix a typo for the BSD style pty.
1998-02-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/Makefile ($(common-objpfx)s-proto.d): Depend on all
syscalls.list's.
1998-02-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add
getresuid and getresgid.
* sysdeps/unix/sysv/linux/getresuid.c: New file.
* sysdeps/unix/sysv/linux/getresgid.c: New file.
* sysdeps/unix/sysv/linux/syscalls.list: Remove getres[ug]id, add
s_getres[ug]id.
* sysdeps/unix/sysv/linux/alpha/syscalls.list: Add getres[ug]id.
* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
1998-02-02 08:11 H.J. Lu <hjl@gnu.org>
* nscd/grpcache.c: Include <stdlib.h>.
1998-02-01 16:01 H.J. Lu <hjl@gnu.org>
* stdlib/atoll.c: Fix comments.
* sysdeps/posix/ttyname.c: Ignore stdin/stdout/stderr.
* sysdeps/posix/ttyname_r.c: Ditto.
1998-02-03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* io/sys/stat.h: Define S_IFLNK and S_IFSOCK if __USE_BSD or
__USE_MISC, independent of __USE_UNIX98.
1998-02-10 19:18 Ulrich Drepper <drepper@happy.cygnus.com>
* sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_missing_rt_sigs):
Rename from __libc_have_rt_sigs and leave as COMMON data.
1998-02-04 11:58 Richard Henderson <rth@twiddle.rth.home>
* Makeconfig (CFLAGS-.os): Kill -fno-common.
* Makerules (libc.so): Prelink libc_pic.a, allocating commons.
* libc.map (GLIBC_2.1): Add Linux/Alpha tv64 symbols.
* elf/rtld.map: New file. Needed to define the GLIBC_2.*
version symbols.
* include/libc-symbols.h (symbol_version, default_symbol_version):
Provide asm versions and correct !DO_VERSIONING versions.
* sysdeps/unix/make-syscalls.sh: Recognize version symbols in
the weak symbol list.
* sysdeps/unix/sysv/linux/sigaction.c (__libc_missing_rt_sigs):
Rename from __libc_have_rt_sigs and leave as COMMON data.
* sysdeps/unix/sysv/linux/sigpending.c: Likewise.
* sysdeps/unix/sysv/linux/sigprocmask.c: Likewise.
* sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
1998-02-04 16:41 Zack Weinberg <zack@rabi.phys.columbia.edu>
* sunrpc/Makefile: Correct dependencies of rpcgen.
1998-02-10 03:00 Ulrich Drepper <drepper@happy.cygnus.com>
* nscd/Makefile: Fix test for available linuxthreads add-on.
Patch by Zack Weinberg <zack@rabi.phys.columbia.edu>.
1998-02-05 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/syscalls.list: Fix typo in lchown.
1998-02-03 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/gnu/Makefile: Respect with-cvs variable.
* manual/errno.texi (Error Messages): Correct description of
strerror_r. Pointed out by jonas@bagge.se.
1998-01-29 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* manual/socket.texi (Host Address Functions): Clarify description
of inet_network.
1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/grantpt.c (argv): Move const to toplevel.
(grantpt): Delete superfluous cast.
1998-02-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makefile ($(inst_slibdir)/libc-$(version).so): Depend on
elf/ldso_install instead of elf/subdir_install.
(elf/ldso_install): New target.
* elf/Makefile (ldso_install): New target.
1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/powerpc/socket.S: Really do the change
of 1998-01-06.
1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* string/bits/string2.h (strcmp): Use __string2_1bptr_p only for
constant expressions.
1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* nss/test-netdb.c: Include <unistd.h> for gethostname and "nss.h"
for __nss_configure_lookup.
(output_hostent): Remove unused variable.
1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* string/tst-inlcall.c: Fix format string.
1998-02-09 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* inet/netinet/in.h: Rename second parameter of bindresvport to
avoid buggy gcc warning. [PR libc/412]
1997-08-04 15:29 Ulrich Drepper <drepper@cygnus.com>
* locale/programs/localedef.c (main): Set bit in avail for those
categories which are successfully read.
* locale/programs/locfile.c (check_all_categories): Don't check
categories if they are not available.
(write_all_categories): Don't write categories if they are not
available.
* login/setutent_r.c (setutent_unknown): Change return type to
int and return result of called function.
* manual/arith.texi: Mark floating-point test macro from ISO C 9X
as macros (not functions).
* manual/libc.texinfo (UPDATED): Update.
* manual/math.texi: Document exceptions, functions to handle
exceptions, mathematical constants, FP comparison functions
and several new functions from ISO C 9X.
Change parameter of drand48, lrand48, and mrand48 to void (not
empty).
* manual/pattern.texi: Remove paragraph which explained that wordexp
is executed by running a shell.
* manual/time.texi: Explain difficulties with strftime if the
functions returns 0 and no error occurred.
* math/math.h: Correct comment for some M_* constants.
(isgreater, isgreaterequal, isless, islessequal, islessgreater,
inunordered): Rewrite to make sure the arguments are evaluated
exactly once.
* nis/rpcsvc/nis.x: Undo last change.
* nis/rpcsvc/nis.h: Likewise.
* nis/rpcsvc/nislib.h: File moved back to here.
* posix/sys/types.h: Don't define socklen_t. Pretty print.
* socket/sys/socket.h (bind, getsockname, connect, sendto, recvfrom,
getsockopt, setsockopt, accept): Change size argument to type
socklen_t.
Pretty print.
* manual/socket.texi: Describe socklen_t and change prototypes of
socket functions to use socklen_t.
* sysdeps/generic/bits/socket.h: Define socklen_t.
(struct msghdr): Correct types to use socklen_t.
* sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/socket.h: Likewise.
* stdio-common/printf_fp.c (__printf_fp): Correct rouding of number
1.0 < x < 8.0.
* stdio-common/tfformat.c: Add new tests for above bug.
* stdlib/strtod.c: Fix typo.
* string/Makefile (headers): Add bits/string.h.
(CFLAGS-*): Add -D__NO_STRING_INLINES.
* string/string.h: Include <bits/string.h> if optimizing and
__NO_STRING_INLINES is not defined.
* sysdeps/stub/bits/string.h: New file.
* sysdeps/powerpc/bits/fenv.h: Fix typos.
* sysdeps/unix/sysv/linux/if_index.c: Let functions return ENOSYS
if SIOGIFINDEX is not defined.
* sysdeps/wordsize-32/inttypes.h: Pretty print.
* sysdeps/wordsize-64/inttypes.h: Pretty print.
* termios/cfsetspeed.c: Rewrite loop to do what it shall do.
* wcsmbs/Makefile (tests): Add tst-wcstof.
* wcsmbs/tst-wcstof.c: New file.
1997-08-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/__longjmp.c: Replace call to abort by infinite
loop, to avoid dragging stdio into the dynamic linker.
1997-08-02 19:44 H.J. Lu <hjl@gnu.ai.mit.edu>
* nis/nis_findserv.c (xid, xid_seed, xid_lookup): Make them
u_int32_t.
1997-08-03 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* posix/wordexp.c (parse_tilde): Fix calls to __getpwnam_r and
__getpwuid_r.
Include <stdio.h> to get prototypes of *printf.
(exec_comm): Remove unneeded variable *sh.
* libc.map: Add wordexp, wordfree.
* posix/Makefile (routines): Add wordexp.
1997-08-03 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* posix/wordexp.c: Correct typo in comment.
(wordexp): Likewise.
* manual/errno.texi (Error Codes): Fix typo.
1997-08-03 15:28 Ulrich Drepper <drepper@cygnus.com>
* csu/initfini.c (SECTION): Don't put quotes around section name
since this is not understood by all assemblers.
Patch by Klaus Espenlaub <kespenla@hydra.informatik.uni-ulm.de>.
1997-08-02 21:27 Ulrich Drepper <drepper@cygnus.com>
* inet/Makefile (headers): Rename netinet/inbits.h to bits/in.h.
* inet/netinet/in.h: Include bits/in.h instead of netinet/inbits.h.
* sysdeps/generic/netinet/inbits.h: Move to...
* sysdeps/generic/bits/in.h: ... here.
* sysdeps/unix/sysv/linux/bits/inbits.h: Move to ...
* sysdeps/unix/sysv/linux/bits/in.h: ... here.
* nis/Makefile (headers): Add bits/nislib.h.
* nis/rpcsvc/nislib.h: Moved to ....
* nis/bits/nislib.h: ... here.
* nis/nss_compat/compat-grp.c: Don't include <rpcsvc/nislib.h>.
* nis/nss_compat/compat-pwd.c: Likewise.
* nis/nss_compat/compat-spwd.c: Likewise.
* nis/nss_nisplus/nisplus-alias.c: Likewise.
* nis/nss_nisplus/nisplus-ethers.c: Likewise.
* nis/nss_nisplus/nisplus-grp.c: Likewise.
* nis/nss_nisplus/nisplus-hosts.c: Likewise.
* nis/nss_nisplus/nisplus-netgrp.c: Likewise.
* nis/nss_nisplus/nisplus-ntework.c: Likewise.
* nis/nss_nisplus/nisplus-proto.c: Likewise.
* nis/nss_nisplus/nisplus-publickey.c: Likewise.
* nis/nss_nisplus/nisplus-pwd.c: Likewise.
* nis/nss_nisplus/nisplus-rpc.c: Likewise.
* nis/nss_nisplus/nisplus-service.c: Likewise.
* nis/nss_nisplus/nisplus-spwd.c: Likewise.
* nis/rpcsvc/nis.x: Include bits/nislib.h, not rpcsvc/nislib.h.
* nis/rpcsvc/nis.h: Likewise.
* inet/getnameinfo.c (nrl_domainname): Change return type to const
char *.
(getnameinfo): Change type of local variable c to const char *.
* inet/inet_ntoa.c: Rewrite to use __libc_once for initialization.
* stdlib/fmtmsg.c: Likewise.
* intl/bindtextdom.c: Update from latest gettext.
* intl/dcgettext.c: Likewise.
* intl/finddomain.c: Likewise.
* intl/l10nflist.c: Likewise.
* intl/localealias.c: Likewise.
* intl/textdomain.c: Likewise.
* login/getutid_r.c: Remove parameter to setutent call.
* login/getutline_r.c: Likewise.
* posix/wordexp.c: Complete rewrite. Not fully implemented yet,
though. Patch by Tim Waugh <tim@cyberelk.demon.co.uk>.
* stdio-common/printf_fp.c: Remove relative include paths.
* stdio-common/printf_fphex.c: Likewise.
* sysdeps/generic/crypt.h: Cleanup. Don't define non standard
elements unless __USE_GNU.
* sysdeps/generic/vlimit.c: Pretty print.
* sysdeps/generic/vtimes.c: Likewise.
* sysdeps/i386/elf/bsd-_setjmp.S: New file. Empty dummy file.
* sysdeps/i386/elf/bsd-setjmp.S: New file. Empty dummy file.
* sysdeps/i386/elf/setjmp.S: New file. Define __setjmp and also
weak definitions of setjmp and _setjmp.
* sysdeps/i386/fpu/bits/mathinline.h: More patches by John Bowman.
* sysdeps/stub/if_index.h: Set errno in all functions and add
stub warnings.
* sysdeps/stub/libc-lock.h: Add __libc_once.
1997-08-02 01:57 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/ptrace.c: Don't set errno in error
case since the __syscall_ptrace call already did this.
Reported by Philip Gladstone <philip@talon.raptor.com>.
1997-07-29 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/sys/fsuid.h: Change include
<gnu/types.h> to <sys/types.h>.
1997-08-01 23:18 Ulrich Drepper <drepper@cygnus.com>
* csu/defs.awk: Fix regexp for end and align.
Patch by Klaus Espenlaub <kespenla@hydra.informatik.uni-ulm.de>.
* locale/programs/localedef.c (print_escaped): New function.
(show_info): Use print_escaped if strings can control unprintable
characters.
Patch by Jochen Hein <jochen.hein@delphi.central.de>.
1997-08-01 18:45 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* nis/nss_nisplus/nisplus-alias.c: Fix NULL pointer problems
* nis/nss_nisplus/nisplus-grp.c: Likewise.
1997-07-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/dl-profile.c (_dl_start_profile): Use _dl_sysdep_error
instead of fprintf.
1997-07-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* manual/socket.texi (Host Address Functions): Fix arguments of
@deftypefun.
1997-07-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/dl-runtime.c: Avoid warning about profile_fixup being
unused.
* sysdeps/m68k/dl-machine.h: Add support for shared library
profiling.
1997-07-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* md5-crypt/Makefile (extra-objs): Add onlymd5-crypt.o for
dependencies.
1997-07-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Make-dist (subdirs): Distribute both aout and elf.
1997-07-31 23:04 Mark Kettenis <kettenis@phys.uva.nl>
* login/utmp-private.h: Remove reset argument from backend
setutent.
* login/getutent_r.c (__setutent): Allways call the setutent
function in the daemon backend.
(setutent_unknown): Function removed.
(getutent_unknown, pututline_unknown): Call __setutent instead of
setutent_unknown.
* login/utmp_file.c (setutent_file): Removed reset argument. All
callers changed.
* login/utmp_daemon.c (setutent_daemon): Removed reset
argument. All callers changed. Try to open connection even if a
previous connection failed, but first check if the sockets exist
in the filesystem.
* login/utmp_daemon.c (pututline_daemon): Try to open connection
before reporting failure.
* login/programs/database.c (open_database): Create compatibility
file if it does not already exist. Supply mode argument in open
calls to guarantee that created files have the proper protection.
* login/programs/utmpd.c (main): Remove files created by a
previous `bind' before creating sockets.
Suggested by a sun <asum@zoology.washington.edu>.
1997-07-29 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* math/libm-test.c: Remove unneeded function check_int_exec.
* BUGS: Correct typos.
* gmon/gmon.c: Add alias for monstartup, declare _strerror_internal.
1997-07-30 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* manual/socket.texi (Host Address Functions): Reformat inet_ntop
entry to confirm with expected behaviour of some scripts.
* libc.map: Add functions/variables in global namespace,
remove wildcards.
1997-07-29 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* resolv/libresolv.map: Add variables and routines used by named,
nslookup and other bind utils.
* libc.map: Likewise.
1997-07-31 00:35 Philip Blundell <Philip.Blundell@pobox.com>
* sysdeps/unix/sysv/linux/if_index.c: Rewrite to avoid using /proc
filesystem.
* inet/test_ifindex.c: New file.
* inet/Makefile (tests): Add test_ifindex.
1997-08-01 04:25 Ulrich Drepper <drepper@cygnus.com>
* nis/nss_nisplus/nisplus-parser.c: Fix another bug in the parser.
Patch by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>.
* manual/errno.texi: Fix typo.
Reported by Erik Talvola <etalvo@sapient.com>.
(write_hist): Remove dependency on 32 bit int.
1997-04-02 16:28 Ulrich Drepper <drepper@cygnus.com>
* grp/fgetgrent.c: Don't use fixed buffer length. Allow dynamic
adjustment if the underlying function say it is too small.
* pwd/fgetpwent.c: Likewise.
* shadow/fgetspent.c: Likewise.
* shadow/sgetspent.c: Likewise.
* grp/fgetgrent_r.c (__fgetgrent_r): If `parse_result' returns -1
this means there was not enough room for the gr_mem array.
* nss/nss_files/files-XXX.c: Leave loop and return error if
`parse_result' returns -1.
* nss/nss_files/files-parse.c (parse_line): Return -1 if parsing
of trailing list fails because of low memory.
(parse_list): Rewrite. The logic was completly incorrect since
the checks for overflowing the array were not executed when
needed.
* shadow/sgetspent_r.c: Only a return value > 0 from parse_line
signals success.
* nss/getXXbyYY.c: Make sure NULL is returned if we ran out of memory.
* nss/getXXent.c: Likewise.
* stdlib/strtod.c (SET_MANTISSA): Make sure that at least one bit
is set in mantissa.
* stdlib/strtof.c: Likewise.
* stdlib/strtold.c: Likewise.
* wcsmbs/wcstof.c: Likewise.
* wcsmbs/wcstold.c: Likewise.
* sysdeps/libm-ieee754/s_nan.c: Use strtod is parameter is not empty
string.
* sysdeps/libm-ieee754/s_nanf.c: Likewise.
* sysdeps/libm-ieee754/s_nanld.c: Likewise.
1997-04-02 13:56 Ulrich Drepper <drepper@cygnus.com>
* manual/errno.texi: Add description of strerror_r.
1997-04-01 19:07 H.J. Lu (hjl@gnu.ai.mit.edu)
* manual/errno.texi: Add ENOMEDIUM and EMEDIUMTYPE.
1997-04-02 13:55 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/gnu/errlist.awk: The Texinfo file is named errno.texi.
1997-03-30 10:59 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/fpu/s_cexp.c: New file.
* sysdeps/m68k/fpu/s_cexpf.c: New file.
* sysdeps/m68k/fpu/s_cexpl.c: New file.
* sysdeps/m68k/fpu/s_nearbyint.c: New file.
* sysdeps/m68k/fpu/s_nearbyintf.c: New file.
* sysdeps/m68k/fpu/s_nearbyintl.c: New file.
* sysdeps/m68k/fpu/s_trunc.c: New file.
* sysdeps/m68k/fpu/s_truncf.c: New file.
* sysdeps/m68k/fpu/s_truncl.c: New file.
* sysdeps/m68k/fpu/s_modf.c: Rewritten.
* sysdeps/m68k/fpu/s_modff.c: Adapted.
* sysdeps/m68k/fpu/s_modfl.c: Likewise.
* sysdeps/m68k/fpu/e_atan2.c: Use __signbit inline.
* sysdeps/m68k/fpu/e_pow.c: Likewise. Write 0.0/0.0 for NaN. Fix
typo in test for `y = 0.5'.
* sysdeps/m68k/fpu/__math.h: Define __trunc, __signbit,
__nearbyint. Remove __modf.
* sysdeps/m68k/Makefile (CFLAGS-s_copysignl.c) [$(subdir)=math]:
Define for gcc bug workaround.
* math/libm-test.c (log2_test): Add epsilon for long double to
"log2 (e)" and "log2 (16)".
(modf_test): Fix test name.
(sqrt_test): Add missing FUNC.
1997-03-29 16:24 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sunrpc/Makefile (CFLAGS-xrquota.c): Fix typo in variable name.
1997-03-28 20:56 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* stdlib/stdlib.h: Declare __clearenv.
1997-03-28 18:03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/libm-ieee754/s_asinhl.c: Fix Ulrich Dreppers mangling of
the last change.
1997-03-28 17:55 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* configure.in: Call AC_CANONICAL_BUILD before referencing
$build. Fix test for BUILD_CC.
1997-04-02 01:29 Philip Blundell <pjb27@cam.ac.uk>
* sysdeps/libm-ieee754/s_log2f.c (__log2f): Fix typo.
1997-03-31 18:53 Philip Blundell <pjb27@cam.ac.uk>
* sysdeps/unix/sysv/linux/net/route.h: Add new IPv6 definitions.
1997-04-01 14:08 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/memset.c: Fix typo.
* sysdeps/stub/fchmod.c: Fix typo.
* sysdeps/stub/fchdir.c: Fix typo.
Reported by Fila Kolodny <fila@ibi.com>.