diff options
| author | Ulrich Drepper <drepper@redhat.com> | 1997-10-29 20:33:40 +0000 |
|---|---|---|
| committer | Ulrich Drepper <drepper@redhat.com> | 1997-10-29 20:33:40 +0000 |
| commit | dd7d45e838a42b0ed470c44b55901ea98d0c2bab (patch) | |
| tree | 446414c64662a5c665483243759abf74060027df | |
| parent | af6f39063b4433ee73647159200d105994d75b49 (diff) | |
| download | glibc-dd7d45e838a42b0ed470c44b55901ea98d0c2bab.tar.xz glibc-dd7d45e838a42b0ed470c44b55901ea98d0c2bab.zip | |
Update.
1997-10-29 21:20 Ulrich Drepper <drepper@cygnus.com>
* libio/strops.c (_IO_str_seekoff): If mode is zero and the read/write
pointers are tied set mode according to current stream mode.
* include/features.h [_GNU_SOURCE] (_POSIX_C_SOURCE): Define to
199506L.
Define _XOPEN_SOURCE to 500 if _POSIX_C_SOURCE is defined.
* manual/creature.texi: Describe this.
* manual/socket.texi: Describe connect, accept, send, sendmsg, sendto,
recv, recvfrom, and recvmsg as cancelation points.
* sysdeps/unix/inet/syscalls.list: Add __libc_* names for these
functions.
1997-10-17 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* Make-dist (try-sysdeps): Don't look for stub files anymore.
* manual/maint.texi (Porting): Remove another reference to stub
directory.
* sysdeps/unix/bsd/sun/sethostid.c: Include stub version from
generic subdir.
* sysdeps/unix/sysv/irix4/reboot.c: Likewise.
* sysdeps/unix/sysv/irix4/swapon.c: Likewise
1997-10-29 03:54 Ulrich Drepper <drepper@cygnus.com>
* resolv/nss_dns/dns-host.c: Change variable pointed to by h_errnop
in all error cases (PR 244).
1997-10-29 00:56 Ulrich Drepper <drepper@cygnus.com>
* posix/glob.c: Fix handling of expressions like "*/" (PR 325).
Optimize by using mempcpy.
1997-10-17 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* po/Makefile ($(mo-installed)): Don't fail during installation if
files don't exist (might happen if msgfmt doesn't exist) (PR 328).
Suggested by Wolfram Gloger <wmglo@dent.med.uni-muenchen.de>.
1997-10-24 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/generic/bits/errno.h (ENOMSG): Define it.
Pointed out by Klaus Espenlaub
<kespenla@hydra.informatik.uni-ulm.de> (PR libc/259).
1997-10-28 17:40 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/libm-ieee754/s_cbrt.c: Testing the returned exponent for
zero isn't enough to determine illegal arguments.
* sysdeps/libm-ieee754/s_cbrtf.c: Likewise.
* sysdeps/libm-ieee754/s_cbrtl.c: Likewise.
1997-10-28 17:14 Ulrich Drepper <drepper@cygnus.com>
* manual/filesys.texi (S_ISVTX): Describe that it is available with
_BSD_SOURCE only.
Reported by Jochen Hein <jochen.hein@delphi.central.de>.
1997-10-28 04:26 Ulrich Drepper <drepper@cygnus.com>
* time/tzfile.c (__tzfile_compute): Use negated value of offset for
timezone variable.
* time/tzset.c (tz_compute): Likewise.
Reported by Erik Troan <ewt@redhat.com>.
1997-10-28 02:51 Ulrich Drepper <drepper@cygnus.com>
* manual/filesys.texi: Correct prototype in readdir_r description.
Reported by Jim Meyering <meyering@eng.ascend.com>.
1997-10-27 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* math/libm-test.c (cbrt_test): Add test for cbrt(0.970299).
1997-10-26 19:39 Zack Weinberg <zack@rabi.phys.columbia.edu>
* stdlib/l64a.c: Produce a useful result for n < 0.
* stdlib/a64l.c: Use unsigned type for working variable.
* manual/string.texi (general): Grammar, typo, overfull fixes.
(strlen): Insert warning about sizeof(char *).
(a64l, l64a): Make documentation agree with implementation.
* libio/iofdopen.c: Use _IO_FILE_complete, not _IO_FILE_plus.
* posix/unistd.h: Add prototypes for __pread, __pread64, __pwrite
| -rw-r--r-- | ChangeLog | 90 | ||||
| -rw-r--r-- | FAQ | 26 | ||||
| -rw-r--r-- | Make-dist | 8 | ||||
| -rw-r--r-- | SNAP | 16 | ||||
| -rw-r--r-- | bits/errno.h | 23 | ||||
| -rw-r--r-- | include/features.h | 13 | ||||
| -rw-r--r-- | libio/stdfiles.c | 2 | ||||
| -rw-r--r-- | libio/strops.c | 3 | ||||
| -rw-r--r-- | manual/creature.texi | 7 | ||||
| -rw-r--r-- | manual/filesys.texi | 6 | ||||
| -rw-r--r-- | manual/maint.texi | 10 | ||||
| -rw-r--r-- | manual/socket.texi | 48 | ||||
| -rw-r--r-- | manual/string.texi | 210 | ||||
| -rw-r--r-- | math/libm-test.c | 1 | ||||
| -rw-r--r-- | po/Makefile | 2 | ||||
| -rw-r--r-- | posix/glob.c | 63 | ||||
| -rw-r--r-- | resolv/nss_dns/dns-host.c | 15 | ||||
| -rw-r--r-- | stdlib/a64l.c | 4 | ||||
| -rw-r--r-- | stdlib/l64a.c | 13 | ||||
| -rw-r--r-- | sysdeps/generic/bits/errno.h | 23 | ||||
| -rw-r--r-- | sysdeps/libm-ieee754/s_cbrt.c | 6 | ||||
| -rw-r--r-- | sysdeps/libm-ieee754/s_cbrtf.c | 6 | ||||
| -rw-r--r-- | sysdeps/libm-ieee754/s_cbrtl.c | 6 | ||||
| -rw-r--r-- | sysdeps/unix/bsd/sun/sethostid.c | 2 | ||||
| -rw-r--r-- | sysdeps/unix/inet/syscalls.list | 16 | ||||
| -rw-r--r-- | sysdeps/unix/sysv/irix4/reboot.c | 2 | ||||
| -rw-r--r-- | sysdeps/unix/sysv/irix4/swapon.c | 2 | ||||
| -rw-r--r-- | time/tzfile.c | 2 | ||||
| -rw-r--r-- | time/tzset.c | 2 |
29 files changed, 450 insertions, 177 deletions
@@ -1,8 +1,94 @@ +1997-10-29 21:20 Ulrich Drepper <drepper@cygnus.com> + + * libio/strops.c (_IO_str_seekoff): If mode is zero and the read/write + pointers are tied set mode according to current stream mode. + + * include/features.h [_GNU_SOURCE] (_POSIX_C_SOURCE): Define to + 199506L. + Define _XOPEN_SOURCE to 500 if _POSIX_C_SOURCE is defined. + * manual/creature.texi: Describe this. + + * manual/socket.texi: Describe connect, accept, send, sendmsg, sendto, + recv, recvfrom, and recvmsg as cancelation points. + * sysdeps/unix/inet/syscalls.list: Add __libc_* names for these + functions. + +1997-10-17 Andreas Jaeger <aj@arthur.rhein-neckar.de> + + * Make-dist (try-sysdeps): Don't look for stub files anymore. + + * manual/maint.texi (Porting): Remove another reference to stub + directory. + + * sysdeps/unix/bsd/sun/sethostid.c: Include stub version from + generic subdir. + * sysdeps/unix/sysv/irix4/reboot.c: Likewise. + * sysdeps/unix/sysv/irix4/swapon.c: Likewise + +1997-10-29 03:54 Ulrich Drepper <drepper@cygnus.com> + + * resolv/nss_dns/dns-host.c: Change variable pointed to by h_errnop + in all error cases (PR 244). + +1997-10-29 00:56 Ulrich Drepper <drepper@cygnus.com> + + * posix/glob.c: Fix handling of expressions like "*/" (PR 325). + Optimize by using mempcpy. + +1997-10-17 Andreas Jaeger <aj@arthur.rhein-neckar.de> + + * po/Makefile ($(mo-installed)): Don't fail during installation if + files don't exist (might happen if msgfmt doesn't exist) (PR 328). + Suggested by Wolfram Gloger <wmglo@dent.med.uni-muenchen.de>. + +1997-10-24 Andreas Jaeger <aj@arthur.rhein-neckar.de> + + * sysdeps/generic/bits/errno.h (ENOMSG): Define it. + Pointed out by Klaus Espenlaub + <kespenla@hydra.informatik.uni-ulm.de> (PR libc/259). + +1997-10-28 17:40 Ulrich Drepper <drepper@cygnus.com> + + * sysdeps/libm-ieee754/s_cbrt.c: Testing the returned exponent for + zero isn't enough to determine illegal arguments. + * sysdeps/libm-ieee754/s_cbrtf.c: Likewise. + * sysdeps/libm-ieee754/s_cbrtl.c: Likewise. + +1997-10-28 17:14 Ulrich Drepper <drepper@cygnus.com> + + * manual/filesys.texi (S_ISVTX): Describe that it is available with + _BSD_SOURCE only. + Reported by Jochen Hein <jochen.hein@delphi.central.de>. + +1997-10-28 04:26 Ulrich Drepper <drepper@cygnus.com> + + * time/tzfile.c (__tzfile_compute): Use negated value of offset for + timezone variable. + * time/tzset.c (tz_compute): Likewise. + Reported by Erik Troan <ewt@redhat.com>. + +1997-10-28 02:51 Ulrich Drepper <drepper@cygnus.com> + + * manual/filesys.texi: Correct prototype in readdir_r description. + Reported by Jim Meyering <meyering@eng.ascend.com>. + +1997-10-27 Andreas Jaeger <aj@arthur.rhein-neckar.de> + + * math/libm-test.c (cbrt_test): Add test for cbrt(0.970299). + +1997-10-26 19:39 Zack Weinberg <zack@rabi.phys.columbia.edu> + + * stdlib/l64a.c: Produce a useful result for n < 0. + * stdlib/a64l.c: Use unsigned type for working variable. + * manual/string.texi (general): Grammar, typo, overfull fixes. + (strlen): Insert warning about sizeof(char *). + (a64l, l64a): Make documentation agree with implementation. + 1997-10-26 18:12 Ulrich Drepper <drepper@cygnus.com> * libio/genops.c: Partial undo of last patch. * libio/stdfiles.c: Likewise. - * libio/iofdopen.c: Use _IO_FILE_complete, not _IO_file_plus. + * libio/iofdopen.c: Use _IO_FILE_complete, not _IO_FILE_plus. * libio/iopopen.c: Likewise. * libio/iovdprintf.c: Likewise. * libio/libio.h: Remove duplicated `;'. @@ -21,7 +107,7 @@ * posix/unistd.h: Add explanation of _POSIX_* constants. - * posix/unists.h: Add prototypes for __pread, __pread64, __pwrite + * posix/unistd.h: Add prototypes for __pread, __pread64, __pwrite and __pwrite64. * sysdeps/generic/pread.c: Define as __pread and make pread weak alias. * sysdeps/generic/pread64.c: Likewise. @@ -97,6 +97,9 @@ please let me know. [Q27] ``Programs like `logname', `top', `uptime' `users', `w' and `who', show incorrect information about the (number of) users on my system. Why?'' + +[Q28] ``After upgrading to a glibc 2.1 with symbol versioning I get + errors about undefined symbols. What went wrong?'' ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ [Q1] ``What systems does the GNU C Library run on?'' @@ -734,12 +737,31 @@ symlink that you have in place before you install glibc. However, ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ +[Q28] ``After upgrading to a glibc 2.1 with symbol versioning I get + errors about undefined symbols. What went wrong?'' + +[A28] {AJ} In a versioned libc a lot of symbols are now local that +have been global symbols in previous versions. When defining a extern +variable both in a user program and extern in the libc the links +resolves this to only one reference - the one in the library. The +problem is caused by either wrong program code or tools. In no case +the global variables from libc should be used by any program. Since +these reference are now local, you might see a message like: + +"msgfmt: error in loading shared libraries: : undefined symbol: _nl_domain_bindings" + +The only way to fix this is to recompile your program. Sorry, that's +the price you might have to pay once for quite a number of advantages +with symbol versioning. + + +~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ Answers were given by: {UD} Ulrich Drepper, <drepper@cygnus.com> {DMT} David Mosberger-Tang, <davidm@AZStarNet.com> -{RM} Roland McGrath, <roland@gnu.ai.mit.edu> -{HJL} H.J. Lu, <hjl@gnu.ai.mit.edu> +{RM} Roland McGrath, <roland@gnu.org> +{HJL} H.J. Lu, <hjl@gnu.org> {AJ} Andreas Jaeger, <aj@arthur.rhein-neckar.de> {EY} Eric Youngdale, <eric@andante.jic.com> {PB} Phil Blundell, <Philip.Blundell@pobox.com> @@ -88,15 +88,13 @@ sources += $(addsuffix .c,$(elided-routines) \ +maybe-sysdeps := $(sources) $(sources:.c=.s) $(sources:.c=.S) $(all-headers) \ $(filter %.c %.S %.s %.h %.sub,$(distribute)) foo:=$(shell echo '+maybe-sysdeps=$(+maybe-sysdeps)'>&2) -# Find all the files that have a stub or generic version. -try-sysdeps := $(foreach dir,$(..)sysdeps/stub $(..)sysdeps/generic \ - $(..)sysdeps/libm-ieee754,\ +# Find all the files that have a generic version. +try-sysdeps := $(foreach dir,$(..)sysdeps/generic $(..)sysdeps/libm-ieee754,\ $(addprefix $(dir)/,$(+maybe-sysdeps))) foo:=$(shell echo 'try-sysdeps=$(try-sysdeps)'>&2) +sysdeps := $(wildcard $(try-sysdeps)) -foo:=$(shell echo 'stub/generic +sysdeps=$(+sysdeps)'>&2) +foo:=$(shell echo 'generic +sysdeps=$(+sysdeps)'>&2) +sysdep-names := $(sort $(patsubst $(..)sysdeps/generic/%,%,\ - $(patsubst $(..)sysdeps/stub/%,%,\ $(patsubst $(..)sysdeps/libm-ieee754/%,%,\ $(+sysdeps))))) foo:=$(shell echo '+sysdep-names=$(+sysdep-names)' >&2) @@ -99,7 +99,7 @@ diff will be relative to the source tree after applying all previous daily diffs. The daily diffs are for people who have relatively low bandwidth ftp or uucp connections. -The files will be available via anonymous ftp from alpha.gnu.ai.mit.edu, in +The files will be available via anonymous ftp from alpha.gnu.org, in directory /gnu/libc and on linux.kernel.org in /pub/software/libs/glibc. The directories should look something like: @@ -110,9 +110,9 @@ directories should look something like: . . -Please note that the snapshots on alpha.gnu.ai.mit.edu and on +Please note that the snapshots on alpha.gnu.org and on linux.kernel.org are not always in sync. Patches to some files might -appear a day a diff earlier or later on alpha than on kernel. +appear a day a diff earlier or later on alpha than on kernel. Use always alpha or always kernel but don't mix them. There are sometimes additionally test releases of the add-ons available in @@ -155,13 +155,13 @@ GETTING HELP, GLIBC DISCUSSIONS, etc ------------------------------------ People who want to help with glibc and who test out snapshots regularly should -get on the libc-alpha@gnu.ai.mit.edu mailing list by sending an email to -libc-alpha-request@gnu.ai.mit.edu. This list is meant (as the name suggests) +get on the libc-alpha@gnu.org mailing list by sending an email to +libc-alpha-request@gnu.org. This list is meant (as the name suggests) for the discussion of test releases and also reports for them. People who are on this list are welcome to post questions of general interest. People who are not only willing to test the snapshots but instead really want -to help developing glibc should contact libc-hacker-request@gnu.ai.mit.edu to +to help developing glibc should contact libc-hacker-request@gnu.org to be put on the developers mailing list. This list is really only meant for developers. No questions about installation problems or other simple topics are wanted nor will they be answered. @@ -174,7 +174,7 @@ you are talking about and it will just cause confusion. BUG REPORTS ----------- -Send bug reports directly to Ulrich Drepper <drepper@gnu.ai.mit.edu>. Please +Send bug reports directly to Ulrich Drepper <drepper@gnu.org>. Please do *not* use the glibcbug script for reporting bugs in the snapshots. glibcbug should only be used for problems with the official released versions. We don't like bug reports in the bug database because otherwise the impression @@ -202,7 +202,7 @@ FORMAT FOR PATCHES ------------------ If you have a fix for a bug, or an enhancement to submit, send your patch to -Ulrich Drepper <drepper@gnu.ai.mit.edu>. Here are some simple guidelines for +Ulrich Drepper <drepper@gnu.org>. Here are some simple guidelines for submitting patches: o Use "unified diffs" for patches. A typical command for generating diff --git a/bits/errno.h b/bits/errno.h index e197c3603d..cb61da7836 100644 --- a/bits/errno.h +++ b/bits/errno.h @@ -18,23 +18,24 @@ /* This file defines the `errno' constants. */ -#if !defined(__Emath_defined) && (defined(_ERRNO_H) || defined(__need_Emath)) +#if !defined __Emath_defined && (defined _ERRNO_H || defined __need_Emath) #undef __need_Emath #define __Emath_defined 1 -#define EDOM 1 -#define ERANGE 2 +# define EDOM 1 +# define ERANGE 2 #endif #ifdef _ERRNO_H -#define ENOSYS 3 -#define EINVAL 4 -#define ESPIPE 5 -#define EBADF 6 -#define ENOMEM 7 -#define EACCES 8 -#define ENFILE 9 -#define EMFILE 10 +# define ENOSYS 3 +# define EINVAL 4 +# define ESPIPE 5 +# define EBADF 6 +# define ENOMEM 7 +# define EACCES 8 +# define ENFILE 9 +# define EMFILE 10 +# define ENOMSG 11 #endif #define __set_errno(val) errno = (val) diff --git a/include/features.h b/include/features.h index e8c97f800e..b6118a1cf6 100644 --- a/include/features.h +++ b/include/features.h @@ -121,7 +121,7 @@ # undef _POSIX_SOURCE # define _POSIX_SOURCE 1 # undef _POSIX_C_SOURCE -# define _POSIX_C_SOURCE 199309L +# define _POSIX_C_SOURCE 199506L # undef _XOPEN_SOURCE # define _XOPEN_SOURCE 500 # undef _XOPEN_SOURCE_EXTENDED @@ -159,7 +159,7 @@ # if defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) != 500 # define _POSIX_C_SOURCE 2 # else -# define _POSIX_C_SOURCE 199309L +# define _POSIX_C_SOURCE 199506L # endif #endif @@ -171,8 +171,13 @@ # define __USE_POSIX2 1 #endif -#if defined _POSIX_C_SOURCE && _POSIX_C_SOURCE >= 199309L -# define __USE_POSIX199309 1 +#ifdef _POSIX_C_SOURCE +# if _POSIX_C_SOURCE >= 199309L +# define __USE_POSIX199309 1 +# endif +# ifndef _XOPEN_SOURCE +# define _XOPEN_SOURCE 500 +# endif #endif #ifdef _XOPEN_SOURCE diff --git a/libio/stdfiles.c b/libio/stdfiles.c index 56861666af..7eb828350c 100644 --- a/libio/stdfiles.c +++ b/libio/stdfiles.c @@ -39,7 +39,7 @@ = {{FILEBUF_LITERAL(CHAIN, FLAGS, FD), &_IO_file_jumps},}; \ default_symbol_version (INAME, NAME, GLIBC_2.1) #else -#define DEF_STDFILE(INAME, FD, CHAIN, FLAGS) \ +#define DEF_STDFILE(INAME, NAME, FD, CHAIN, FLAGS) \ struct _IO_FILE_complete INAME \ = {{FILEBUF_LITERAL(CHAIN, FLAGS, FD), &_IO_file_jumps},}; \ default_symbol_version (INAME, NAME, GLIBC_2.1) diff --git a/libio/strops.c b/libio/strops.c index c596315b60..01f8d6eeb7 100644 --- a/libio/strops.c +++ b/libio/strops.c @@ -215,6 +215,9 @@ _IO_str_seekoff (fp, offset, dir, mode) _IO_ssize_t cur_size = _IO_str_count (fp); _IO_fpos64_t new_pos = EOF; + if (mode == 0 && (fp->_flags & _IO_TIED_PUT_GET)) + mode = (fp->_flags & _IO_CURRENTLY_PUTTING ? _IOS_OUTPUT : _IOS_INPUT); + /* Move the get pointer, if requested. */ if (mode & _IOS_INPUT) { diff --git a/manual/creature.texi b/manual/creature.texi index 38a11c0093..03f79ede96 100644 --- a/manual/creature.texi +++ b/manual/creature.texi @@ -36,6 +36,11 @@ available. If you define this macro with a value of @code{2}, then both the functionality from the POSIX.1 standard and the functionality from the POSIX.2 standard (IEEE Standard 1003.2) are made available. This is in addition to the @w{ISO C} facilities. + +The Single Unix Specification specify that setting this macro to the +value @code{199506L} selects all the values specified by the POSIX +standards plus those of the Single Unix Specification, i.e., is the +same as if @code{_XOPEN_SOURCE} is set to @code{500} (see below). @end defvr @comment (none) @@ -88,7 +93,7 @@ available which are necessary for the X/Open Unix brand. If the macro @code{_XOPEN_SOURCE} has the value @math{500} this includes all functionality described so far plus some new definitions from the -Single Unix specification, @w{version 2}. +Single Unix Specification, @w{version 2}. @end defvr @comment (NONE) diff --git a/manual/filesys.texi b/manual/filesys.texi index 4cf4f99c07..c33bad892e 100644 --- a/manual/filesys.texi +++ b/manual/filesys.texi @@ -340,7 +340,7 @@ value. Use @code{readdir_r} when this is critical. @comment dirent.h @comment GNU -@deftypefun int readdir_r (DIR *@var{dirstream}, struct *@var{entry}, struct **@var{result}) +@deftypefun int readdir_r (DIR *@var{dirstream}, struct dirent *@var{entry}, struct dirent **@var{result}) This function is the reentrant version of @code{readdir}. Like @code{readdir} it returns the next entry from the directory. But to prevent conflicts for simultaneously running threads the result is not @@ -1783,6 +1783,10 @@ waste of the server's memory to cache them a second time. In this use the sticky bit also says that the filesystem may fail to record the file's modification time onto disk reliably (the idea being that no-one cares for a swap file). + +This bit is only available on BSD systems (and those derived from +them). Therefore one has to use the @code{_BSD_SOUR |
