* sysdeps/unix/sysv/linux/i386/mmap.S (__mmap): Return -EINVAL
even if bits 10 a 11 are non-zero.
* sysdeps/unix/sysv/linux/i386/mmap64.S (__mmap64): Likewise.
* Makeconfig: Ensures the soversions.mk part of Makefile gets
included before building gnu/lib-names.h
Patch by Maciej W. Rozycki <macro@ds2.pg.gda.pl>.
2000-08-25 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/system.c (__libc_system): We cannot use vfork here
since we call sigaction in the child.
2000-08-24 Ulrich Drepper <drepper@redhat.com>
* resolv/res_send.c (res_ourserver_p): Cleanup the type mess to avoid
problems with now restrict parameter types.
(convaddr4to6): Likewise.
2000-08-24 Denis Joseph Barrow <djbarrow@de.ibm.com>
2000-08-24 Denis Joseph Barrow <djbarrow@de.ibm.com>
* sysdeps/s390/fpu/fedisblxcpt.c: New file.
* sysdeps/s390/fpu/feenablxcpt.c: New file.
* sysdeps/s390/fpu/fegetexcept.c: New file.
* sysdeps/s390/fpu/fenv_libc.h: Some reordering, new definition
FPC_VALID_MASK.
* sysdeps/unix/sysv/linux/i386/sys/io.h (_EXTERN_INLINE): Remove.
Use static __inline instead of _EXTERN_INLINE.
* misc/sys/select.h: Move prototypes of __select from here ...
* include/sys/select.h: ... to here.
* socket/sys/socket.h: Move prototypes of __send and __connect
from here....
* include/sys/socket.h: ... to here.
2000-08-23 Ulrich Drepper <drepper@redhat.com>
* stdio-common/vfscanf.c: Add %F format support.
* locale/programs/ld-ctype.c (ctype_output): Make sure
_NL_CTYPE_TRANSLIT_DEFAULT_MISSING_LEN and
_NL_CTYPE_TRANSLIT_IGNORE_LEN are aligned.
(ctype_read): Enable returning of wide character strings for reading
transliteration information.
2000-08-23 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Use
__setrlimit as strong name. Takes only 2 arguments.
* sysdeps/unix/sysv/linux/sh/syscalls.list: __syscall_setrlimit
takes only 2 arguments.
2000-08-23 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/s390/bits/setjmp.h: Add __ to JB_GPR* defines.
only for !SHARED case. Get the code from dl-osinfo.h.
2000-08-21 Martin Schwidefsky <schwidefsky@de.ibm.com>
2000-08-21 Martin Schwidefsky <schwidefsky@de.ibm.com>
2000-08-23 Ulrich Drepper <drepper@redhat.com>
* locale/programs/ld-ctype.c (ctype_read): Allow more than one
default_missing character being specified, pick the first
representable.
2000-08-23 Andreas Jaeger <aj@suse.de>
* include/wchar.h: Add some pure attributes.
* time/time.h: Add const attribute for dysize.
* include/stdlib.h: Add malloc attribute to __posix memalign.
* stdlib/stdlib.h: Add some pure and malloc attributes.
* wcsmbs/wchar.h: Likewise.
* dirent/dirent.h: Add some pure attributes.
* include/dirent.h: Likewise.
2000-08-23 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/dl-osinfo.h: Include "kernel-features.h",
otherwise __LINUX_KERNEL_VERSION might not be defined.
(MIN): Define if not already defined.
* stdio-common/vfprintf.c: Handle %F format.
* stdio-common/printf-parse.h (parse_one_spec): Likewise.
Reported by Joseph S. Myers <jsm28@cam.ac.uk>.
* stdio-common/tstdiomisc.c: Add test for %F printf format.
* po/zh.po: New file.
* iconvdata/sjis.c: In conversion from UCS4, correct test for
enough room in target buffer.
Patch by KUSANO Takayuki <AE5T-KSN@asahi-net.or.jp> [PR libc/1865].
* iconvdata/bug-iconv1.c: New file.
* iconvdata/Makefile (tests): Add bug-iconv1.
2000-08-22 Mark Kettenis <kettenis@gnu.org>
* hurd/hurdsig.c: Rearrange headers a bit.
(_hurdsig_init): Block until _hurd_msgport_thread is initialized
when cthreads is being used.
* elf/Makefile (distribute): Add dl-osinfo.h.
* sysdeps/generic/dl-osinfo.h: New file.
* sysdeps/unix/sysv/linux/dl-osinfo.h: New file.
* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Use DL_SYSDEP_OSCHECK
if defined.
* sysdeps/unix/sysv/linux/init-first.c: Perform kernel version test
only for !SHARED case. Get the code from dl-osinfo.h.
* stdlib/random_r.c (__setstate_r): Also compute end_ptr
correctly.
(__initstate_r): Set errno on error.
(__random_r): Likewise.
(__setstate_r): Correct offset when computing
new rptr and fptr. Test for arg_state being NULL.
Reported by Michael Fischer <fischer@cs.yale.edu>.
* stdlib/random_r.c (__setstate_r): Correct offset when computing
new rptr and fptr. Reported by Michael Fischer <fischer@cs.yale.edu>.
* posix/regex.h: Add macro definitions to allow compiling outside
glibc.
* sysdeps/i370/Implies: Removed.
* sysdeps/mvs/Implies: Removed.
* catgets/catgets.c (catopen): Filter out env_var values with / if
necessary.
* locale/findlocale.c (_nl_find_locale): Move test for unusable
locale name after all getenvs.
2000-08-21 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/s390/__longjmp.c: Removed unused variable result.
* sysdeps/s390/fpu/bits/fenv.h: Moved FPC_* definitions to fenv_libc.h.
* sysdeps/s390/fpu/fclrexcpt.c: Include fenv_libc.h instead of fenv.h.
* sysdeps/s390/fpu/fegetenv.c: New file.
* sysdeps/s390/fpu/fegetround.c: Include fenv_libc.h instead of fenv.h.
* sysdeps/s390/fpu/feholdexcpt.c: New file.
* sysdeps/s390/fpu/fenv_libc.h: New file.
* sysdeps/s390/fpu/fesetenv.c: New file.
* sysdeps/s390/fpu/fesetround.c: Include fenv_libc.h instead of fenv.h.
* sysdeps/s390/fpu/feupdateenv.c: New file.
* sysdeps/s390/fpu/fgetexcptflg.c: Reformatted.
* sysdeps/s390/fpu/fpu_control.h: Corrected header.
* sysdeps/s390/fpu/fraiseexcpt.c: New file.
* sysdeps/s390/fpu/fsetexcptflg.c: New file.
* sysdeps/s390/fpu/ftestexcept.c: New file.
* sysdeps/s390/fpu/libm-test-ulps: New file.
* sysdeps/s390/gmp-mparam.h: Add end of comment.
* sysdeps/s390/initfini.c: New file.
* sysdeps/unix/sysv/linux/s390/Dist: Add sys/procfs.h.
* sysdeps/unix/sysv/linux/s390/Makefile: Remove sys/reg.h.
* sysdeps/unix/sysv/linux/s390/bits/stat.h: New file.
* sysdeps/unix/sysv/linux/s390/lchown.c: New file.
* sysdeps/unix/sysv/linux/s390/sys/elf.h: Moved elf definitions to
sys/procfs.h as proposed by Mark Kettenis.
* sysdeps/unix/sysv/linux/s390/sys/procfs.h: New file.
2000-08-20 Ulrich Drepper <drepper@redhat.com>
* time/tst-getdate.c (main): Make error messages more human readable.
* sysdeps/powerpc/fpu_control.h (_FPU_GETCW): Allow gcc to generic
postinc/postdec instruction.
(_FPU_SETCW): Likewise.
Patch by Franz Sirl <Franz.Sirl-kernel@lauterbach.com>.
* ctype/ctype.h (isblank): Make available if ISO C99.
* wctype/wctype.h (iswblank): Make available if ISO C99.
* math/math.h (signgam): Don't make available if ISO C99.
* math/tgmath.h (tgamma): Renamed from gamma.
Patches by Joseph S. Myers <jsm28@cam.ac.uk>.
2000-08-20 Ulrich Drepper <drepper@redhat.com>
* intl/loadmsgcat.c (_nl_unload_domain): Also free conv_tab element.
Pretty printing.
* intl/plural.y (new_exp): Take number of optional parameters in
second parameter. Test for correct number of parameters and free
correctly in case of failure. Adjust all callers.
(yylex): Allow ';' as terminator character.
* locale/findlocale.c (free_mem): Also free here->filename.
* locale/loadlocale.c (_nl_unload_locale): Also free locale->name.
* malloc/malloc.c (new_heap): Try harder to get an aligned chunk of
2000-08-19 Ulrich Drepper <drepper@redhat.com>
* elf/Versions [ld] (GLIBC_2.2): Export _dl_check_map_versions.
* elf/dl-deps.c (_dl_map_object_deps): If object was dependency of
a dynamically loaded object remove old l_initfini list.
* elf/dl-libc.c (free_mem): Used as __libc_subfreeres callback to
remove some dynamically allocated memory blocks in the dynamic
loading data structures.
* elf/dl-load.c (add_name_to_object): Initialize dont_free to 0.
* elf/dl-open.c (dl_open_workder): Don't call _dl_check_all_versions.
Instead call _dl_check_map_versions only for the dependencies.
* elf/rtld.c: Avoid unneccessary initializations. Mark l_libname
information of initial objects as not free-able.
* sysdeps/generic/ldsodefs.h (struct libname_list): Add dont_free
element.
* elf/filter.c: Call mtrace.
* elf/restest1.c: Likewise. Close the objects.
* elf/loadtest.c: Call mtrace. Check result of dlclose. Print more
debug information.
* elf/constload1.c: Add comment explaining not freed memory.
2000-08-18 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/mips/bits/stat.h: Add pads to show
alignment for structs stat and stat64.
Patch by Maciej W. Rozycki <macro@ds2.pg.gda.pl>.
2000-08-16 Jakub Jelinek <jakub@redhat.com>
* sysdeps/sparc/fpu/fedisblxcpt.c: New file.
* sysdeps/sparc/fpu/feenablxcpt.c: New file.
* sysdeps/sparc/fpu/fegetexcept.c: New file.
* sysdeps/sparc/sparc64/fpu/e_sqrtl.c: New file.
* sysdeps/sparc/sparc64/dl-machine.h: Subtract 4 .rela.plt entries
to match Solaris.
2000-08-17 Ulrich Drepper <drepper@redhat.com>
* stdio-common/printf_fp.c: Fix chars_needed computation.
Patch by Greg McGary <greg@mcgary.org>.
2000-08-17 Jakub Jelinek <jakub@redhat.com>
* elf/dl-load.c (_dl_map_object): Don't crash if both loader and
_dl_loaded are NULL.
2000-08-17 Jakub Jelinek <jakub@redhat.com>
* manual/arith.texi (feholdexcept): Returns 0 on success.
2000-08-17 Andreas Jaeger <aj@suse.de>
* sysdeps/gnu/net/if.h (struct ifreq): Add ifru_newname.
(ifr_newname): New.
Reported by Andi Kleen <ak@suse.de>.
2000-08-17 Jakub Jelinek <jakub@redhat.com>
* sysdeps/alpha/fpu/fedisblxcpt.c: New file.
* sysdeps/alpha/fpu/feenablxcpt.c: New file.
* sysdeps/alpha/fpu/fegetexcept.c: New file.
2000-08-16 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/xstatconv.c (xstat32_conv): Test sizes
of buf->st_ino and kbuf->st_ino, not __st_ino.
If _HAVE_STAT64___ST_INO is not defined, don't use __st_ino at all.
* sysdeps/unix/sysv/linux/getdents64.c: Change path in #include
directive so that only linux/getdents.c is used, not some
architecture specific one.
2000-08-16 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/fpu/fegetexcept.c (fegetexcept): Return currently
enabled, not disabled exceptions.
* sysdeps/i386/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
* sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Likewise.
($(addprefix $(objpfx),$(tests)),
$(addprefix $(objpfx),$(librt-tests))):
* include/link.h: Undo last patches. Hurd now has stat64.
2000-08-16 Andreas Schwab <schwab@suse.de>
* sysdeps/m68k/fpu/fegetexcept.c: New file.
* sysdeps/m68k/fpu/fedisblxcpt.c: New file.
* sysdeps/m68k/fpu/feenablxcpt.c: New file.
* sysdeps/mach/hurd/xstatconv.c: New file.
* sysdeps/mach/hurd/fxstat64.c: New file.
* sysdeps/mach/hurd/lxstat64.c: New file.
* sysdeps/mach/hurd/xstat64.c: New file.
* sysdeps/mach/hurd/Dist: Add xstatconv.c.
2000-08-15 Mark Kettenis <kettenis@gnu.org>
2000-08-15 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/dl-sysdep.c (__libc_multiple_libcs):
Initialize, needed for change in common symbol handling in newer
binutils. Mirrors 2000-01-03 change made by Andreas Schwab.
* include/link.h: Include sysd-link.h.
* sysdeps/generic/sysd-link.h: New file.
* sysdeps/unix/sysv/linux/sysd-link.h: New file.
* elf/Makefile (distribute): Add sysd-link.h.
* elf/dl-load.c: Use definitions from sysd-link.h instead of stat
types and functions directly.
* elf/dl-misc.c: Likewise.
* elf/dl-profile.c: Likewise.
* elf/loadfail.c (main): Close all successfully loaded objects.
2000-08-15 Ulrich Drepper <drepper@redhat.com>
* elf/multiload.c: Add mtrace call. Call dlclose for all handles and
free wd.
* elf/dl-deps.c (_dl_map_object_deps): Don't allocate needed list if
there is already one.
* elf/dl-close.c: Pretty print.
* sysdeps/posix/ttyname.c: Make name variable from getttyname function
global (with file scope). Add __libc_subfreeres function to free the
string.
* sysdeps/unix/sysv/linux/ttyname.c: Likewise. Also for buf variable
in ttyname function.
* sysdeps/generic/strtok.c: Remove initializer for olds variable.
* crypt/md5-crypt.c: Let destructor deallocate static buffer.
* iconvdata/sjis.c (from_ucs4_lat1): Handle U005C and U007E by
mapping them to /x5c and /x7e respectively.
2000-08-12 Andreas Jaeger <aj@suse.de>
* include/features.h (__STDC_ISO_10646__): Define.
Reported by Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>.
* include/features.h (__USE_ISOC99): Define for _XOPEN_SOURCE >= 600.
* locale/langinfo.h: Define YESSTR and NOSTR also for XPG4 (but not
for revision 6 and up).
* posix/sys/types.h: Define __need_timer_t and __need_clockid_t before
including <time.h>.
* time/time.h: Allow __need_timer_t and __need_clockid_t to be defined
to get definitions of just these types.
* signal/signal.h: Define thread signal handling functions also for
POSIX95.
* sysdeps/unix/sysv/linux/bits/types.h: Define thread types also for
POSIX95.
* sysdeps/unix/sysv/linux/alpha/bits/types.h: Likewise.
* sysdeps/unix/sysv/linux/ia64/bits/types.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/types.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/types.h: Likewise.
* sysvipc/sys/shm.h: Define pid_t for XPG.
* wcsmbs/wchar.h: Make the various wide char string and stream
functions available for the respective XPG versions.
2000-08-12 Ulrich Drepper <drepper@redhat.com>
* posix/regex.c (compile_range): Implement collation sequence
handling for glibc. Use simple character ordering otherwise and
not strcoll.
2000-08-12 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_FCNTL64):
Define for 2.4.1 on sparc as well.
* sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Fill in correct values
for F_GETLK64, F_SETLK64, and F_SETLKW64.
* sysdeps/unix/sysv/linux/sparc/sparc32/fcntl.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/lockf64.c: New file.
2000-08-12 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl): Try fcntl
if fnctl64 is not available for F_*LK*64.
* sysdeps/unix/sysv/linux/i386/lockf64.c: New file.
2000-08-12 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_FCNTL64):
Define for 2.4.1 on x86.
* sysdeps/unix/sysv/linux/i386/fcntl.c: New file.
* sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Fill in correct values
for F_GETLK64, F_SETLK64, and F_SETLKW64.
* dirent/dirent.h: Define DT_WHT.
* sysdeps/unix/sysv/linux/arm/alphasort64.c: New file.
* sysdeps/unix/sysv/linux/arm/getdents64.c: New file.
* sysdeps/unix/sysv/linux/arm/readdir64.c: New file.
* sysdeps/unix/sysv/linux/arm/readdir64_r.c: New file.
* sysdeps/unix/sysv/linux/arm/scandir64.c: New file.
* sysdeps/unix/sysv/linux/arm/versionsort64.c: New file.
2000-08-08 Jes Sorensen <jes@linuxcare.com>
* sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Add SI_KERNEL
define.
Add missing ILL_BADIADDR to enum and make ILL_BREAK match the
define of the kernel.
Add missing __SEG_PSTKOVF definition.
Adjust the padding of struct siginfo and struct sigevent to
match the fact that sigval_t is 64 bit.
2000-08-01 Mark Kettenis <kettenis@gnu.org>
* sysdeps/unix/sysv/linux/i386/sys/elf.h (elf_greg_t, ELF_NGREG,
elf_gregset_t, elf_fpregset_t, elf_fpxregset_t): Moved to
sysdeps/unix/sysv/linux/i386/sys/procfs.h.
Remove the junk that's only relevant in the Linux kernel itself.
Add a warning saying that this file is now obsolete, and include
<sys/procfs.h>.
* sysdeps/unix/sysv/linux/i386/sys/procfs.h (elf_greg_t,
ELF_NGREG, elf_gregset_t, elf_fpregset_t, elf_fpxregset_t): Moved
here from sysdeps/unix/sysv/linux/i386/sys/elf.h. Don't include
<signal.h>, <sys/ucontext.h> and <sys/elf.h>. Remove parts of
`struct elf_prstatus' that are #ifdef'ed out. Improve comments
and add the notice that the file is primarily there for GDB.
* sysdeps/unix/sysv/linux/i386/sys/user.h: Fix comment.
2000-08-09 Jakub Jelinek <jakub@redhat.com>
* time/tzfile.c (__tzfile_compute): __tzstring zones
from zone_names.
2000-08-09 Jakub Jelinek <jakub@redhat.com>
* resolv/resolv.h (__res_state): Surround prototype with
__BEGIN_DECLS/__END_DECLS.
* sysdeps/unix/sysv/linux/m68k/chown.c: Include kernel-features.h.
2000-08-04 Jes Sorensen <jes@linuxcare.com>
* sysdeps/unix/sysv/linux/ia64/bits/resource.h (__rlimit_resource):
Make independant of asm/resource.h from the Linux kernel.
2000-08-06 Bruno Haible <haible@clisp.cons.org>
* iconv/gconv_conf.c (__gconv_read_conf): Don't call realpath.
2000-08-06 Bruno Haible <haible@clisp.cons.org>
* intl/Makefile (CPPFLAGS): Remove $(i18ndir) from LOCALE_ALIAS_PATH.
* locale/Makefile (locale-CPPFLAGS): Likewise.
2000-08-09 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/fpu/libm-test-ulps: Increase several error values
for AMD processors.
2000-08-03 Jakub Jelinek <jakub@redhat.com>
* misc/Versions (mincore): Export at GLIBC_2.2.
2000-08-03 Bruno Haible <haible@clisp.cons.org>
* intl/libintl.h (gettext, dgettext, dcgettext): Add back __THROW.
2000-08-02 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/socketpair.c (__socketpair): Renamed from
socketpair. Made socketpair a weak alias.
* sysdeps/mach/hurd/pipe.c (__pipe): Reimplemented using
__socketpair. Use S_IFIFO protocol to make pipes POSIX
conforming, but fall back on the old protocol if the socket server
doesn't support it.
* include/sys/socket.h: Add prototype for __socketpair.
2000-08-09 Andreas Jaeger <aj@suse.de>
* configure.in: Change required make versions.
* manual/install.texi (Tools for Compilation): Document required
make version.
(Supported Configurations): Update list of supported
configurations.
2000-08-06 Ulrich Drepper <drepper@redhat.com>
* locale/programs/ld-collate.c (struct symbol_t): Add name element.
(new_symbol): Take new parameters with name of the symbol.
Adjust callers.
(handle_ellipsis): Don't only allow character symbols.
(collate_read): Allow string of collating elements contain invalid
characters; ignore entry in this case.
Handle ellipsis of collating symbols before first order_start.
Allow ellipsis in state 0.
2000-08-04 Ulrich Drepper <drepper@redhat.com>
* locale/programs/ld-collate.c (handle_ellipsis): Fix typo in
error message.
Reported by Tung-Han Hsieh <thhsieh@twcpro.phys.ntu.edu.tw>.
* posix/regex.c (compile_range): Translate range start and end
(MOVE_BUFFER_POINTER): Use it.
(ELSE_EXTEND_BUFFER_HIGH_BOUND): New macro.
(EXTEND_BUFFER): Use it.
2000-08-04 Greg McGary <greg@mcgary.org>
* posix/regex.c (SET_HIGH_BOUND): New macro.
(MOVE_BUFFER_POINTER): Use it.
(ELSE_EXTEND_BUFFER_HIGH_BOUND): New macro.
(EXTEND_BUFFER): Use it.
frame pointer early so that we save caller's frame pointer.
* sysdeps/i386/elf/setjmp.S: Likewise.
* sysdeps/i386/setjmp.S (__sigsetjmp): Pop our
frame pointer early so that we save caller's frame pointer.
* sysdeps/i386/elf/setjmp.S: Likewise.
2000-08-02 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/s390/Dist: New file.
* sysdeps/unix/sysv/linux/s390/sysdep.h: New file.
* sysdeps/unix/sysv/linux/s390/sysdep.S: New file.
* sysdeps/unix/sysv/linux/s390/syscall.S: New file.
* sysdeps/unix/sysv/linux/s390/sys/user.h: New file.
* sysdeps/unix/sysv/linux/s390/sys/ucontext.h: New file.
* sysdeps/unix/sysv/linux/s390/sys/ptrace.h: New file.
* sysdeps/unix/sysv/linux/s390/sys/elf.h: New file.
* sysdeps/unix/sysv/linux/s390/socket.S: New file.
* sysdeps/unix/sysv/linux/s390/sigcontextinfo.h: New file.
* sysdeps/unix/sysv/linux/s390/shmctl.c: New file.
* sysdeps/unix/sysv/linux/s390/setreuid.c: New file.
* sysdeps/unix/sysv/linux/s390/setresuid.c: New file.
* sysdeps/unix/sysv/linux/s390/setresgid.c: New file.
* sysdeps/unix/sysv/linux/s390/setregid.c: New file.
* sysdeps/unix/sysv/linux/s390/setgroups.c: New file.
* sysdeps/unix/sysv/linux/s390/setgid.c: New file.
* sysdeps/unix/sysv/linux/s390/setfsuid.c: New file.
* sysdeps/unix/sysv/linux/s390/setfsgid.c: New file.
* sysdeps/unix/sysv/linux/s390/seteuid.c: New file.
* sysdeps/unix/sysv/linux/s390/setegid.c: New file.
* sysdeps/unix/sysv/linux/s390/semctl.c: New file.
* sysdeps/unix/sysv/linux/s390/register-dump.h: New file.
* sysdeps/unix/sysv/linux/s390/putpmsg.c: New file.
* sysdeps/unix/sysv/linux/s390/putmsg.c: New file.
* sysdeps/unix/sysv/linux/s390/profil-counter.h: New file.
* sysdeps/unix/sysv/linux/s390/msgctl.c: New file.
* sysdeps/unix/sysv/linux/s390/mmap.S: New file.
* sysdeps/unix/sysv/linux/s390/getuid.c: New file.
* sysdeps/unix/sysv/linux/s390/getresuid.c: New file.
* sysdeps/unix/sysv/linux/s390/getresgid.c: New file.
* sysdeps/unix/sysv/linux/s390/getpmsg.c: New file.
* sysdeps/unix/sysv/linux/s390/getmsg.c: New file.
* sysdeps/unix/sysv/linux/s390/getgroups.c: New file.
* sysdeps/unix/sysv/linux/s390/getegid.c: New file.
* sysdeps/unix/sysv/linux/s390/geteuid.c: New file.
* sysdeps/unix/sysv/linux/s390/fchown.c: New file.
* sysdeps/unix/sysv/linux/s390/clone.S: New file.
* sysdeps/unix/sysv/linux/s390/brk.c: New file.
* sysdeps/unix/sysv/linux/s390/bits/time.h: New file.
* sysdeps/unix/sysv/linux/s390/bits/resource.h: New file.
* sysdeps/unix/sysv/linux/s390/bits/mman.h: New file.
* sysdeps/unix/sysv/linux/s390/bits/fcntl.h: New file.
* sysdeps/unix/sysv/linux/s390/Makefile: New file.
* sysdeps/s390/sysdep.h: New file.
* sysdeps/s390/sys/ucontext.h: New file.
* sysdeps/s390/sub_n.S: New file.
* sysdeps/s390/strncpy.S: New file.
* sysdeps/s390/strcpy.S: New file.
* sysdeps/s390/stackinfo.h: New file.
* sysdeps/s390/setjmp.S: New file.
* sysdeps/s390/s390-mcount.S: New file.
* sysdeps/s390/mul_1.S: New file.
* sysdeps/s390/memusage.h: New file.
* sysdeps/s390/memset.S: New file.
* sysdeps/s390/memcpy.S: New file.
* sysdeps/s390/memchr.S: New file.
* sysdeps/s390/machine-gmon.h: New file.
* sysdeps/s390/ldbl2mpn.c: New file.
* sysdeps/s390/gmp-mparam.h: New file.
* sysdeps/s390/fpu/fpu_control.h: New file.
* sysdeps/s390/fpu/fesetround.c: New file.
* sysdeps/s390/fpu/fegetround.c: New file.
* sysdeps/s390/fpu/fclrexcpt.c: New file.
* sysdeps/s390/fpu/bits/fenv.h: New file.
* sysdeps/s390/ffs.c: New file.
* sysdeps/s390/elf/start.S: New file.
* sysdeps/s390/elf/setjmp.S: New file.
* sysdeps/s390/elf/bsd-setjmp.S: New file.
* sysdeps/s390/elf/bsd-_setjmp.S: New file.
* sysdeps/s390/dl-machine.h: New file.
* sysdeps/s390/bzero.S: New file.
* sysdeps/s390/bsd-setjmp.S: New file.
* sysdeps/s390/bsd-_setjmp.S: New file.
* sysdeps/s390/bits/string.h: New file.
* sysdeps/s390/bits/setjmp.h: New file.
* sysdeps/s390/bits/huge_val.h: New file.
* sysdeps/s390/bits/endian.h: New file.
* sysdeps/s390/bits/byteswap.h: New file.
* sysdeps/s390/bcopy.S: New file.
* sysdeps/s390/backtrace.c: New file.
* sysdeps/s390/atomicity.h: New file.
* sysdeps/s390/asm-syntax.h: New file.
* sysdeps/s390/addmul_1.S: New file.
* sysdeps/s390/add_n.S: New file.
* sysdeps/s390/abort-instr.h: New file.
* sysdeps/s390/__longjmp.c: New file.
* sysdeps/s390/Makefile: New file.
* sysdeps/s390/Implies: New file.
* sysdeps/s390/Dist: New file.
Patches by Martin Schwidefsky <schwidefsky@de.ibm.com>.
* sysdeps/ia64/bits/byteswap.h: New file.
Patch by Dan Pop <Dan.Pop@cern.ch>.
* misc/sys/cdefs.h: Define __attribute_format_arg__.
* intl/libintl.h: Use it here instead of using __attribute__ directly.
2000-07-13 H.J. Lu <hjl@gnu.org>
* posix/regex.c (re_max_failures): Set to 4000.
2000-08-01 Ulrich Drepper <drepper@redhat.com>
* gnulib/Makefile (tests): Add tst-gcc.
* gnulib/tst-gcc.c: New file.
* assert/Makefile (routines): Add __assert.
* assert/Versions: Export __assert for glibc 2.2.
* assert/__assert.c: New file.
* assert/assert.h: Declare __assert.
2000-07-27 Bruno Haible <haible@clisp.cons.org>
* locale/localeinfo.h (_ISCTYPE): New macro.
* posix/fnmatch_loop.c (internal_fnmatch): Use it, support new
LC_CTYPE locale format.
* locale/programs/ld-ctype.c (locale_ctype_t): New field class_b.
(ctype_output): Output class_b[nr] right before class_3level[nr].
(allocate_arrays): Fill class_b, similarly to class_3level.
2000-08-01 Ulrich Drepper <drepper@redhat.com>
2000-08-01 Ulrich Drepper <drepper@redhat.com>
Joseph S. Myers <jsm28@cam.ac.uk>
* math/tgmath.h: Make standard compliant. Don't ask how.
2000-07-04 H.J. Lu <hjl@gnu.org>
* elf/Makefile ($(inst_slibdir)/$(rtld-version-installed-name)):
Use $(do-install-program) instead of "$(INSTALL_PROGRAM) $< $@.new".
($(inst_slibdir)/$(rtld-installed-name)): Use $(make-shlib-link) only.
2000-07-30 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
* include/features.h (_XOPEN_SOURCE): Update the explanation.
(__USE_LARGEFILE): Add an explanation.
(_POSIX_C_SOURCE): Define to 2 only if _XOPEN_SOURCE < 500.
(__USE_XOPEN2K): Define whenever _XOPEN_SOURCE >= 600.
2000-08-01 Ulrich Drepper <drepper@redhat.com>
* libio/Makefile: Enable exception handling for genops, wgenops,
fileops, and wfileops.
2000-07-29 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Take into
acount that elf/rtld's main program might remove some varibales
from the environment if we're trying to be secure. Move the Hurd
startup data if necessary, or, if we there is no startup data,
make sure the magical convention that ARGV[0] is stored just after
the environment list.
2000-08-01 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/arm/Makefile [subdir=resource]
(sysdep_routines): Add oldgetrlimit, oldsetrlimit.
* sysdeps/unix/sysv/linux/arm/syscalls.list: Add oldgetrlimit,
oldsetrlimit for GLIBC_2.0.
(LINE_PARSER): Allow any number of spaces between ip address and
number. Fixes PR libc/1833, reported by rp010gf@voruta.vu.lt.
* nis/nss_nisplus/nisplus-hosts.c (_nss_nisplus_getipnodebyname_r):
Likewise.
* Make-dist (dist): Resolve `..' in file names.
* nss/nss_files/files-ethers.c: Use case-insensitive lookup.
(LINE_PARSER): Allow any number of spaces between ip address and number.
Fixes PR libc/1833, reported by rp010gf@voruta.vu.lt.
2000-07-31 Jes Sorensen <jes@linuxcare.com>
* sysdeps/ia64/elf/initfini.c: Kill dummy section since align and
endp statements have already been added.
2000-04-18 David Mosberger <davidm@hpl.hp.com>
* sysdeps/unix/sysv/linux/ia64/sysdep.h: Include
<sysdeps/ia64/sysdep.h>.
* sysdeps/ia64/_mcount.S: New file.
* sysdeps/ia64/elf/initfini.c (_init): Preserve gp around call to
__gmon_start__. Fix up extraneous whitespace.
2000-01-12 H.J. Lu <hjl@gnu.org>
* sysdeps/ia64/elf/initfini.c: New file.
2000-07-31 Jes Sorensen <jes@linuxcare.com>
* sysdeps/unix/sysv/linux/ia64/clone.S: Add stop bit to avoid WAW
dependency between branch and ar.pfs write.
2000-07-31 Ulrich Drepper <drepper@redhat.com>
* iconvdata/gb18030.c: Don't map to and from positions in ISO
10646 which are not yet assigned.
Patch by wang shouhua <shouhuawang@redflag-linux.com>.
2000-07-31 Andreas Jaeger <aj@suse.de>
* inet/Versions: Remove getipnodebyaddr and friends from
GLIBC_2.2.
* resolv/netdb.h: Remove getipnodebyaddr and friends.
2000-07-30 Bruno Haible <haible@clisp.cons.org>
* iconvdata/sjis.c (BODY for FROM_LOOP): Treat the case
ch >= 0x81 && ch2 < 0x40 as invalid.
2000-07-30 Bruno Haible <haible@clisp.cons.org>
* iconvdata/uhc.c (BODY for FROM_LOOP): Reject ch2 == 0xff as invalid.
(BODY for TO_LOOP): Accept 0x7f. Increment outptr as needed.
2000-07-30 Bruno Haible <haible@clisp.cons.org>
* iconvdata/johab.c (BODY for TO_LOOP): After calling
ucs4_to_ksc5601_sym, fix the conversion to JOHAB.
2000-07-30 Bruno Haible <haible@clisp.cons.org>
* iconvdata/t.61.c (to_ucs4): Change values of 0xa4, 0a6, 0xa8, 0xb4,
0xb8.
(from_ucs4): Change values of U+00A4, U+00BB, U+00ED.
2000-07-30 Bruno Haible <haible@clisp.cons.org>
* iconvdata/macintosh.c (HAS_HOLES): Set to 1.
2000-07-30 Bruno Haible <haible@clisp.cons.org>
* iconvdata/iso_6937.c (to_ucs4): Change values of 0x24 and 0xb4.
(from_ucs4): Change values of U+00A4 and U+00ED.
(BODY of TO_LOOP): Remove mapping from U+02DC to 0x0020.
2000-07-30 Bruno Haible <haible@clisp.cons.org>
* iconvdata/ansi_x3.110.c (from_ucs4): Change entry for 0xed.
(BODY for TO_LOOP): Map U+2122, U+2126, not U+2022, U+2026.
2000-07-30 Bruno Haible <haible@clisp.cons.org>
* iconvdata/Makefile (gen-8bit-gap-modules): Remove isiri-3342.
* iconvdata/isiri-3342.h: New file.
* iconvdata/isiri-3342.c (HAS_HOLES): Avoid gaps >= 0xe0, but don't
treat 0x80 as a gap.
2000-07-30 Bruno Haible <haible@clisp.cons.org>
* string/strxfrm.c (encoding_mask, encoding_byte): Remove.
(utf8_encode): Use simple shifts instead. Fix return value.
2000-07-30 Ralf Baechle <ralf@gnu.org>
* sysdeps/unix/sysv/linux/mips/bits/sigstack.h: New file. On MIPS
the order of struct sigaltstack members is different.
2000-07-26 Philip Blundell <philb@gnu.org>
* sysdeps/arm/dl-machine.h (fix_bad_pc24): New function.
(elf_machine_rel): Use it for out-of-range PC24 relocs.
2000-07-28 Philip Blundell <philb@gnu.org>
* math/test-fpucw.c: Ignore reserved bits in control word.
2000-07-28 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_RET): New macro.
(ret): Redefine to PSEUDO_RET.
(PSEUDO): Remove jump to syscall_error.
2000-07-29 Mark Kettenis <kettenis@gnu.org>
* resolv/README: Add some information about using the resolver in
multi-threaded code and with C++. Spelling fixes.
2000-07-29 Mark Kettenis <kettenis@gnu.org>
* resolv/resolv.h (struct __sockaddr_in): Remove.
(struct __res_state) [!_LIBC]: Remove reference to __sockaddr_in.
* sysdeps/powerpc/backtrace.c (struct layout): Make pointers
__unbounded.
2000-07-28 Ulrich Drepper <drepper@redhat.com>
* stdio-common/_i18n_itoa.c: Removed.
* stdio-common/_i18n_itoa.h: Removed.
* stdio-common/_i18n_itowa.c: Removed.
* stdio-common/_i18n_itowa.h: Removed.
* stdio-common/_i18n_number.h: New file.
* stdio-common/Depend: New file.
* stdio-common/printf-parse.h: Handle I modifier correctly. Optimize.
* stdio-common/vfprintf.c: Rewrite buffer handling for integer
printing. Change printing of numbers with locale specific digits to
use new code in _i18n_number.h.
* stdio-common/bug13.c: Improve messages.
* locale/programs/ld-ctype.c (ctype_read): Improve error message.
(set_class_defaults): Always search also for Uxxxx names.
Detect insufficient number of outdigits.
* locale/Makefile (C-translit.h): Use mv not $(move-if-changed).
2000-07-27 Bruno Haible <haible@clisp.cons.org>
* locale/C-ctype.c (_nl_C_LC_CTYPE): Swap the two names in
_NL_CTYPE_MAP_NAMES.
* locale/localeinfo.h (__TOW_toupper, __TOW_tolower): New enum values.
* wctype/wcfuncs.c (towlower, towupper): Use them.
* wctype/wcfuncs_l.c (__towlower_l, __towupper_l): Likewise.
* wctype/wctrans.c (wctrans): Likewise.
* wctype/wctrans_l.c (__wctrans_l): Likewise.
2000-07-27 Bruno Haible <haible@clisp.cons.org>
* posix/fnmatch.c (is_char_class): Fix logic. Avoid buffer overrun.
Use the optimized version of this function outside glibc as well.
2000-07-27 Jakub Jelinek <jakub@redhat.com>
* locale/indigits.h (indigit_value): Correct.
* locale/indigitswc.h (indigitwc_value): Correct.
* stdio-common/vfscanf.c (__vfscanf): Fix I18N number
conversion, add GROUP checking for it, fix GROUP number
conversion with strlen(thousands) > 1.
Honour width correctly in the presence of floating
decimal points and thousands separators.
* stdio-common/tst-sscanf.c: New test.
* stdio-common/Makefile: Add it to tests.
* sysdeps/generic/strtol.c (strtol): Fix conversion if there are
thousands separators and group argument is non-zero.
Reported by Andi Kleen <ak@suse.de>.
2000-07-12 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
* sysdeps/unix/sysv/linux/mips/Dist: Add sys/tas.h.
* sysdeps/unix/sysv/linux/mips/Makefile (sysdep_routines): Add
_test_and_set.
(headers): Add sys/tas.h.
* sysdeps/unix/sysv/linux/mips/Versions: Export _test_and_set for
GLIBC_2.2 from libc.
* sysdeps/unix/sysv/linux/mips/_test_and_set.c: New file.
* sysdeps/unix/sysv/linux/mips/sys/tas.h: New file for
_test_and_set.
2000-07-28 Andreas Jaeger <aj@suse.de>
* sysdeps/gnu/netinet/tcp.h: Add TCP options from Linux 2.4.
* dlfcn/Makefile ($(objpfx)tst-dladdr): New.
($(objpfx)tst-dladdr.out): new.
(tests): Add tst-dladdr.
($(objpfx)glrefmain): Use libdl.
* dlfcn/tst-dladdr.c: New file. Based on a test by Volkmar Sieh
<vs@caldera.de>.
2000-07-27 Jes Sorensen <jes@linuxcare.com>
* sysdeps/unix/sysv/linux/ia64/fork.c: Make __libc_fork the strong
name and add weak alias for __fork.
* sysdeps/unix/sysv/linux/ia64/syscalls.list: Change llseek, pread
& pwrite to use __libc_<name> as strong names instead of
__syscall_<name>.
* include/sched.h: Add clone2 prototype.
2000-07-26 Jes Sorensen <jes@linuxcare.com>
* sysdeps/unix/sysv/linux/ia64/sysdep.h (ENTRY): Don't declare the
procedure name twice.
2000-07-27 Philip Blundell <philb@gnu.org>
* malloc/malloc.c (HAVE_MREMAP): Undo change of 1997-12-04.
* sysdeps/unix/sysv/linux/bits/socket.h: Rename MSG_URG TO
MSG_CONFIRM following kernel 2.4.0 (MSG_URG was never used).
* sysdeps/unix/sysv/linux/mips/bits/socket.h: Likewise.
Reported by Andi Kleen <ak@suse.de>.
2000-07-27 Andreas Jaeger <aj@suse.de>
* rt/tst-aio64.c: Add tests for aio_fsync64 and aio_cancel64.
(do_wait): Test requests with aio_return64.
(do_test): Change callers of do_wait.
2000-07-26 Andreas Jaeger <aj@suse.de>
* rt/tst-aio.c: Add tests for aio_fsync and aio_cancel.
(do_wait): Test requests with aio_return.
(do_test): Change callers of do_wait.
2000-07-27 Ulrich Drepper <drepper@redhat.com>
* rt/aio_misc.c (__aio_remove_request): New function. Handle removing
from request list. Don't do the list handling here, call
__aio_remove_request.
* rt/aio_misc.h: Add prototype for __aio_remove_request.
* rt/aio_cancel.c: Don't assume __aio_find_req_fd succeeds since the
request might already be processed. Don't do the list handling
here, call __aio_remove_request.
* rt/aio_misc.c: Don't depend on aio_reqprio field for LIO_SYNC and
LIO_DSYNC.
* rt/aio_misc.c: Add comment explaining why writer memory barriers
are missing.
* sysdeps/generic/bp-semctl.h (check_semctl): Fix syntax error
in union init. Pass zero for ignored semnum arg to semctl.
* sysdeps/unix/sysv/linux/shmat.c (shmat): Fix typo.
2000-07-27 Greg McGary <greg@mcgary.org>
* sysdeps/generic/bp-checks.h (BOUNDED_N): Make it work for void*.
* sysdeps/generic/bp-semctl.h (check_semctl): Fix syntax error
in union init. Pass zero for ignored semnum arg to semctl.
* sysdeps/unix/sysv/linux/shmat.c (shmat): Fix typo.
2000-07-25 Bruno Haible <haible@clisp.cons.org>
* wctype/wctype.h (__wctrans_l): New declaration.
* wctype/wctrans_l.c: New file.
* wctype/Makefile (routines): Add wctrans_l.
* rt/tst-aio4.c: New file, slightly modified version of tst-aio2.
* rt/tst-aio5.c: New file, slightly modified version of tst-aio2.
2000-07-26 Andreas Jaeger <aj@suse.de>
* rt/tst-aio4.c: New file, slighlty modified version of tst-aio2.
* rt/tst-aio5.c: New file, slighlty modified version of tst-aio2.
* rt/Makefile: Add rules to build and run tst-aio4 and tst-aio5.
* rt/tst-aio.c (test_file): Fix typo.
* rt/tst-aio64.c (test_file): Likewise.
* rt/tst-aio3.c: New file, slightly modified version of tst-aio2.
* rt/Makefile: Add rules to build and run tst-aio3.
* sysdeps/unix/sysv/linux/netinet/ip.h: Removed ip_options since
it's not needed and confuses only.
2000-07-26 Ulrich Drepper <drepper@redhat.com>
* resolv/res_init.c: Add support for nameserver communication with
IPv6.
* resolv/res_send.c: Likewise.
* resolv/resolv.h (struct __res_state): Store IPv6 address, not IPv4
in nsaddrs field.
Patch by <venaas@nvg.ntnu.no>.
2000-07-25 Bruno Haible <haible@clisp.cons.org>
* locale/programs/ld-ctype.c (wctype_table_get): New function.
(wcwidth_table_get): New function.
(wcwidth_table_add): Call it.
(wctrans_table_get): New function.
(wctrans_table_add): Call it.
2000-07-25 Ulrich Drepper <drepper@redhat.com>
* rt/lio_listio.c (lio_listio): Handle case of SIG == NULL correctly.
Reported by Kevin Beard <beardk@gatwick.Geco-Prakla.slb.com>.
2000-07-25 Mark Kettenis <kettenis@gnu.org>
* nss/nss_files/files-netgrp.c (strip_whitespace): New function.
(_nss_netgroup_parseline): Use strip_whitespace to strip off any
leading and trailing spaces from host, user and domain name.
2000-07-25 Jes Sorensen <jes@linuxcare.com>
* csu/defs.awk: Add support for need_endp.
2000-07-25 Mark Kettenis <kettenis@gnu.org>
* resolv/resolv.h: Remove __P from res_send_qhook and
res_send_rhook typedefs.
2000-07-25 Bruno Haible <haible@clisp.cons.org>
* intl/tst-translit.c (main): Unset OUTPUT_CHARSET.
2000-07-25 Mark Kettenis <kettenis@gnu.org>
* hurd/thread-cancel.c (hurd_thread_cancel): When cancelling the
calling thread, set the cancellation flag and return success
instead of EINTR.
2000-07-25 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
* sysdeps/mips/dl-machine.h (_RTLD_PROLOGUE): Stringify using
__STRING(entry) and not #entry.
(_RTLD_EPILOGUE): Likewise.
* sysdeps/mips/mips64/dl-machine.h: Likewise.
2000-07-25 Andreas Jaeger <aj@suse.de>
* stdio-common/Makefile ($(objpfx)tst-unbputc.out): Change parameter
according to changes in test program, run also with static only
builds.
($(objpfx)tst-printf.out): Likewise.
* stdio-common/tst-unbputc.sh: Likewise.
* stdio-common/tst-printf.sh: Likewise.
* sysdeps/unix/sysv/linux/powerpc/mmap64.c (__mmap64): Really fix
check for offset.
* grp/initgroups.c (initgroups_dyn_function): Renamed from
initgroups_function, adopted prototype for change from 2000-07-23.
(initgroups): Follow type change.
2000-07-23 Bruno Haible <haible@clisp.cons.org>
* wctype/wchar-lookup.h: New file.
* wctype/iswctype.c: Include "wchar-lookup.h".
(__iswctype): Support alternate locale format with 3-level tables.
* wctype/iswctype_l.c (__iswctype_l): Likewise.
* wctype/towctrans.c (__towctrans): Likewise.
* wctype/towctrans_l.c (__towctrans_l): Likewise.
* wctype/wcfuncs.c: Include "wchar-lookup.h".
(__ctype32_wctype, __ctype32_wctrans): Declare external.
(__iswalnum, __iswalpha, __iswcntrl, __iswdigit, __iswlower,
__iswgraph, __iswprint, __iswpunct, __iswspace, __iswupper,
__iswxdigit, towlower, towupper): Support alternate locale format
with 3-level tables.
* wctype/wcextra.c (iswblank): Likewise.
* wctype/wcfuncs_l.c: Include "wchar-lookup.h".
(__iswalnum_l, __iswalpha_l, __iswcntrl_l, __iswdigit_l, __iswlower_l,
__iswgraph_l, __iswprint_l, __iswpunct_l, __iswspace_l, __iswupper_l,
__iswxdigit_l, __towlower_l, __towupper_l): Support alternate locale
format with 3-level tables.
* wctype/wcextra_l.c (__iswblank_l): Likewise.
* wctype/wctype.c (__wctype): Likewise. In the alternate locale
format, return a 3-level table pointer.
* wctype/wctype_l.c (__wctype_l): Likewise.
* wctype/wctrans.c (wctrans): Likewise.
* wctype/wctype.h (__ISwupper, __ISwlower, __ISwalpha, __ISwdigit,
__ISwxdigit, __ISwspace, __ISwprint, __ISwgraph, __ISwblank,
__ISwcntrl, __ISwpunct, __ISwalnum): New enum values.
(iswctype): Remove macro definition.
* wcsmbs/wcwidth.h: Include "wchar-lookup.h".
(internal_wcwidth): Support alternate locale format with 3-level
tables.
* locale/langinfo.h (_NL_CTYPE_CLASS_OFFSET, _NL_CTYPE_MAP_OFFSET):
New nl_items.
* locale/categories.def (_NL_CTYPE_CLASS_OFFSET, _NL_CTYPE_MAP_OFFSET):
Define them as being type "word".
* locale/C-ctype.c (_nl_C_LC_CTYPE): Add initializers for them.
* ctype/ctype-info.c (__ctype32_wctype, __ctype32_wctrans,
__ctype32_width): New exported variables.
* locale/lc-ctype.c (_nl_postload_ctype): Initialize them in the
alternate locale format. Don't initialize __ctype_names and
__ctype_width in the alternate locale format.
* locale/programs/localedef.h (oldstyle_tables): New declaration.
* locale/programs/localedef.c (oldstyle_tables): New variable.
(OPT_OLDSTYLE): New macro.
(options): Add --old-style option.
(parse_opt): Handle --old-style option.
* locale/programs/ld-ctype.c (locale_ctype_t): Add class_offset,
map_offset, class_3level, map_3level, width_3level members.
(ctype_output): Support for alternate locale format: Computation of
nelems changes. _NL_CTYPE_TOUPPER32, _NL_CTYPE_TOLOWER32 and
_NL_CTYPE_CLASS32 only 256 characters. _NL_CTYPE_NAMES empty.
New fields _NL_CTYPE_CLASS_OFFSET, _NL_CTYPE_MAP_OFFSET. Field
_NL_CTYPE_WIDTH now contains the three-level table. Extra elems
now contain both class and map tables.
(struct wctype_table): New type.
(wctype_table_init, wctype_table_add, wctype_table_finalize): New
functions.
(struct wcwidth_table): New type.
(wcwidth_table_init, wcwidth_table_add, wcwidth_table_finalize): New
functions.
(struct wctrans_table): New type.
(wctrans_table_init, wctrans_table_add, wctrans_table_finalize): New
functions.
(allocate_arrays): Support for alternate locale format: Set
plane_size and plane_cnt to 0. Restrict ctype->ctype32_b to the first
256 characters. Compute ctype->class_3level. Restrict ctype->map32[idx]
to the first 256 characters. Compute ctype->map_3level. Set
ctype->class_offset and ctype->map_offset. Compute ctype->width_3level
instead of ctype->width.
2000-07-24 Jakub Jelinek <jakub@redhat.com>
* libio/wfiledoalloc.c (_IO_wfile_doallocate): Measure size
in wide characters, not bytes.
* libio/tst_putwc.c (do_test): Add test for writing lots of data
into file.
2000-07-22 Bruno Haible <haible@clisp.cons.org>
* locale/nl_langinfo.c (nl_langinfo): Accept items belonging to the
new categories LC_PAPER, LC_NAME, LC_ADDRESS, LC_TELEPHONE,
LC_MEASUREMENT, LC_IDENTIFICATION.
* locale/xlocale.h (struct __locale_struct): Increase size of
__locales array.
* locale/duplocale.c (__duplocale): Copy newly added categories as
well.
* locale/freelocale.c (__freelocale): Free newly added categories.
* locale/newlocale.c (__newlocale): Fix typo in sanity check.
If a base is given, use it, don't simply return it.
2000-07-22 Bruno Haible <haible@clisp.cons.org>
* crypt/md5-crypt.c (__md5_crypt_r): Avoid gcc warnings: Use pointer
variables, copied_key and copied_salt, instead of boolean variables.
* string/endian.h: Explain the _*_ENDIAN constant values a bit
more. Patch by scarlet@mit.edu [PR libc/1799].
* io/ftwtest-sh: Add -f parameter to chmod if -R is also given.
[PR libc/1792].
* argp/argp-parse.c (parser_finalize): Reverse order in which
parsers are run for ARGP_KEY_END. [PR libc/1755].
* grp/initgroups.c (initgroups): Don't limit the possible number
of groups to NGROUPS_MAX. Allow dynamic resizing. Loop around
the setgroups call while the call fails and descrease the number
of groups each round.
The name of the initgroups function in the NSS modules changed.
(compat_call): Adapt for dynamic resizing.
* hesiod/nss_hesiod/hesiod-grp.c (_nss_hesiod_initgroups_dyn):
Implement dynamic resizing.
* nis/nss_compat/compat-initgroups.c (_nss_compat_initgroups_dyn):
Likewise.
* nis/nss_nis/compat-initgroups.c (_nss_nis_initgroups_dyn): Likewise.
* hesiod/Versions: Change exported interface name.
* nis/Versions: Change exported interface name.
2000-07-23 Ulrich Drepper <drepper@redhat.com>
2000-07-23 Ulrich Drepper <drepper@redhat.com>
* locale/iso-639.def: Some errors corrected.
Patch by Keld Simonsen.
* include/limits.h: Update non-gcc portion.
Patch by Joseph S. Myers <jsm28@cam.ac.uk>.
2000-07-22 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/brk.c (_hurd_set_brk): When shrinking the
program's data space, reallocate only the space that was just
deallocated to release its backing space.
2000-07-23 Ulrich Drepper <drepper@redhat.com>
* nss/nss_files/files-hosts.c: Implement multi handling.
* resolv/Versions: Export _res_hconf for GLIBC_2.2 from libc.
2000-07-22 Mark Kettenis <kettenis@gnu.org>
* locale/findlocale.c (locale_file_list): Use __LC_LAST as array
size instead of LC_ALL to take into account the new locale
categories.
* iconv/gconv_trans.c: Correct a few bugs in the search loop. Remove
remainders of hash table.
* locale/categories.def: Remove remainders of transliteration
hash table.
* locale/langinfo.h: Likewise.
* locale/programs/ld-ctype.c: Likewise. Fix code to write out
transliteration tables.
* locale/gen-translit.pl: New file.
* locale/C-translit.h.in: New file.
* locale/C-ctype.c: Include C-translit.h. Initialize transliteration
data pointers with data from this file.
* locale/Makefile (distribute): Add C-translit.h.in, C-translit.h,
and gen-translit.pl.
Add rule to generate C-translit.h.
* stdio-common/vfscanf.c: Handle input -- with format %f correctly
(it's no input error).
* stdio-common/tstscanf.c: Add test case for format %f with input --.
* stdio-common/scanf12.c: Correct expected result for first scanf.
2000-07-22 Ulrich Drepper <drepper@redhat.com>
* stdio-common/vfprintf.c (process_string_arg): Correct handling
of multibyte character strings in %s format with precision.
* locale/programs/ld-collate.c (collate_read): Allow collating
symbols be named in reorder-after instructions.
Reported by Yoshito Kawada <KAWADA@jp.ibm.com>.
* locale/programs/ld-collate.c (handle_ellipsis): Test for
duplication with generated name, not the name of the first
character.
Patch by Yong Li <yong.li@asu.edu>.
2000-07-21 Wolfram Gloger <wg@malloc.de>
* malloc/malloc.c (chunk_alloc): Try mmap_chunk() for smaller
allocations only if a non-main arena cannot be extended.
* sysdeps/powerpc/bp-asm.h (DISCARD_BOUNDS): Rename from
UNCHECK_BOUNDS.
set_inuse_bit_at_offset, clear_inuse_bit_at_offset, set_foot):
Define in terms of chunk_at_offset.
(inuse, set_inuse, clear_inuse): Define in terms of next_chunk.
(next_bin, prev_bin): offset by size of real array elements.
(chunk_align): Make `m' a scalar, since that's how it's used.
* malloc/malloc.c (next_chunk, prev_chunk, inuse_bit_at_offset,
set_inuse_bit_at_offset, clear_inuse_bit_at_offset, set_foot):
Define in terms of chunk_at_offset.
(inuse, set_inuse, clear_inuse): Define in terms of next_chunk.
(next_bin, prev_bin): offset by size of real array elements.
(chunk_align): Make `m' a scalar, since that's how it's used.
2000-07-21 Greg McGary <greg@mcgary.org>
* sysdeps/powerpc/bits/setjmp.h (JB_SIZE): New constant.
* sysdeps/powerpc/elf/libc-start.c (__libc_start_main):
Wrap bounds around argv & envp and each of their string members.
* sysdeps/powerpc/elf/start.S: Designate BP symbols.
* sysdeps/unix/sysv/linux/powerpc/brk.S: Wrap entry-point
symbol in BP_SYM (). Discard bounds of address arg.
* sysdeps/unix/sysv/linux/powerpc/clone.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/mmap64.c (__mmap64):
Discard bounds on address arg, add bounds to return value.
2000-07-21 Greg McGary <greg@mcgary.org>
* sysdeps/powerpc/bp-asm.h (DISCARD_BOUNDS): Rename from UNCHECK_BOUNDS.
* sysdeps/powerpc/bits/setjmp.h (JB_SIZE): New constant.
* sysdeps/powerpc/elf/libc-start.c (__libc_start_main):
Wrap bounds around argv & envp and each of their string members.
* sysdeps/powerpc/elf/start.S: Designate BP symbols.
* sysdeps/unix/sysv/linux/powerpc/brk.S: Wrap entry-point
symbol in BP_SYM (). Discard bounds of address arg.
* sysdeps/unix/sysv/linux/powerpc/clone.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/mmap64.c (__mmap64):
Discard bounds on address arg, add bounds to return value.
* libio/Makefile (routines): Add fwide.
* libio/iofwide.c (_IO_fwide): Remove locking. This is done in
fwide now. Internal calls to _IO_fwide must do locking themselves
or don't need locking.
* libio/fwide.c: New file.
* elf/dl-load.c (_dl_map_object): Implement handling of DF_1_NODEFLIB.
* elf/Makefile: Add no modules for nodelete test.
* elf/nodelmod3.c: New file.
* elf/nodelmod4.c: New file.
* elf/nodelete.c: Also test case where dependency of dlopen() object
is marked nodelete.
* elf/nodlopen.c: New file.
* elf/nodlopenmod.c: New file.
* elf/Makefile (tests): Add nodlopen. Add rules to generate nodlopen.
* include/dlfcn.h: Define __RTLD_DLOPEN.
* elf/dl-load.c (_dl_map_object_from_fd): If DF_1_NOOPEN is set
and this is a dlopen() call, do not load the binary.
* dlfcn/dlopen.c: Add __RTLD_DLOPEN to mode passed down to _dl_open.
* dlfcn/dlopenold.c: Likewise.
* configure.in: Add test for -z nodelete option.
* config.make.in: Define have-z-nodelete with libc_cv_z_nodelete.
2000-07-20 Mark Kettenis <kettenis@gnu.org>
Make Hesiod NSS module thread-safe.
* hesiod/README.hesiod: Update.
* hesiod/Versions [GLIBC_2.2]: Add _nss_hesiod_getservbyport_r,
_nss_hesiod_setprotoent, _nss_hesiod_endprotoent,
_nss_hesiod_getprotobyname_r, and _nss_hesiod_getprotobynumber_r.
* hesiod/Makefile (libnss_hesiod-routines): Add hesiod-init and
hesiod-proto.
* hesiod/nss_hesiod/hesiod-init.c: New file.
* hesiod/nss_hesiod/hesiod-pwd.c: Rewritten for thread-safeness.
* hesiod/nss_hesiod/hesiod-grp.c: Likewise.
* hesiod/nss_hesiod/nss_hesiod.h: New file.
* hesiod/nss_hesiod/hesiod-service.c
(_nss_hesiod_getservbyport_r): New function. Provide support for
looking up services by port number.
* hesiod/nss_hesiod/hesiod-proto.c: New file.
* hesiod/hesiod.c: Update from BIND 8.2.3-T5B.
* hesiod/hesiod.h: Likewise.
* hesiod/hesiod_p.h: Likewise.
2000-07-20 Mark Kettenis <kettenis@gnu.org>
Fix problems with `struct __res_state' getting too big.
* resolv/resolv.h (struct __sockaddr_in): New definition.
(struct __res_state): Use __sockaddr_in instead of sockaddr_in in
the private parts of the structure to save some space.
* resolv/res_send.c (res_nsend): Cast &EXT(statp).nsaddrs[ns] to
(struct sockaddr_in *) in call to sock_eq.
Use memcpy to copy statp->nsaddr_list[ns] to &EXT(statp).nsaddrs[ns].
2000-07-20 Ulrich Drepper <drepper@redhat.com>
* sysdeps/mach/hurd/dl-sysdep.c: Likewise.
* elf/elf.h: Add various DF_1_*, DTF_1_*, and DF_P1_* entries.
* elf/dl-close.c (_dl_close): Don't close an object if it is marked
with nodelete.
* elf/dl-open.c (dl_open_worker): Pass RTLD_NOLOAD as new parameter
to _dl_map_object. Return immediately if no object loaded.
Set DF_1_NODELETE bit in l_flags_1 if RTLD_NODELETE was passed.
* elf/dynamic-link.h (elf_get_dynamic_info): Copy DT_FLAGS_1 entry
if it exists into l_flags_1 word.
* elf/dl-load.c (_dl_map_object_from_fd): Take no parameter and use
it to determine whether loading is wanted or not.
(_dl_map_object): Likewise.
Call _dl_map_object_from_fd with new parameter.
* sysdeps/generic/ldsodefs.h: Update prototype.
* elf/dl-deps.c: Add new parameter to _dl_map_object calls.
* elf/rtld.c: Likewise.
* elf/Makefile (tests): Add noload. Add rules to generate noload.
* elf/noload.c: New file.
* include/link.h (struct link_map): Add l_feature_1 and l_flags_1.
* sysdeps/generic/bits/dlfcn.h: Define RTLD_NOLOAD and RTLD_NODELETE.
* sysdeps/mips/bits/dlfcn.h: Likewise.
2000-07-20 Ulrich Drepper <drepper@redhat.com>
* libio/Makefile (tests): Add tst_wprintf2.
(tst_wprintf2-ARGS): Define.
* libio/tst_wprintf2.c: New file.
Based on a test case by Yoshito Kawada <KAWADA@jp.ibm.com>.
* libio/wfiledoalloc.c: Only allocate external buffer if this
hasn't happened yet.
* libio/wfileops.c (_IO_wdo_write): Overflow only if there is really
something in the buffer. gconv call can write up to end of the
buffer, not only _IO_write_end.
(_IO_wfile_overflow): Allocate also external buffer.
* stdio-common/vfprintf.c (process_string_arg): Handle multibyte
strings with precision in vfwprintf correctly.
* stdio-common/vfprintf.c: Fix completely broken handling of
unbuffered wide character streams.
Reported by Yoshito Kawada <KAWADA@jp.ibm.com>.
2000-07-18 Ulrich Drepper <drepper@redhat.com>
* intl/Makefile: Make sure tst-translit is run after tst-gettext.
* locale/C-ctype.c: Add initializers for gap elements.
* locale/programs/ld-ctype.c (ctype_output): Write out index entries
for gap elements.
(profile_fixup): Don't define for __BOUNDED_POINTERS__.
* sysdeps/i386/dl-machine.h: Don't use regparm attribute for
__BOUNDED_POINTERS__.
(ELF_MACHINE_RUNTIME_TRAMPOLINE): Use non-regparm version
for __BOUNDED_POINTERS__.
* iconv/gconv_trans.c: Add #include <stdlib.h> to get malloc decl.
* elf/dl-runtime.c (fixup): Trampoline passes unbounded pointer.
(profile_fixup): Don't define for __BOUNDED_POINTERS__.
* sysdeps/i386/dl-machine.h: Don't use regparm attribute for
__BOUNDED_POINTERS__.
(ELF_MACHINE_RUNTIME_TRAMPOLINE): Use non-regparm version
for __BOUNDED_POINTERS__.
* string/Makefile (o-objects.ob): Add variable to pull
unbounded versions of memcpy, memset and memchr into libc_b.
* Makerules (o-objects): Supplement with $(o-objects$o).
* string/Makefile (o-objects.ob): Add variable to pull
unbounded versions of memcpy, memset and memchr into libc_b.
keyletters F, I, S, W. Remove unused keyletter V. Surround
signature argnames with angle-brackets for use as word delimiters,
and to induce syntax errors for any args not handled. Split
multi-echo echoes and comment each stage.
* sysdeps/unix/common/syscalls.list: Refine & correct signatures.
* sysdeps/unix/inet/syscalls.list: Likewise.
* sysdeps/unix/mman/syscalls.list: Likewise.
* sysdeps/unix/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/syscalls.list: Likewise.
* sysdeps/unix/sysv/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/powerpc/syscalls.list
2000-07-17 Greg McGary <greg@mcgary.org>
* sysdeps/unix/make-syscalls.sh: Handle new arg signature
keyletters F, I, S, W. Remove unused keyletter V. Surround
signature argnames with angle-brackets for use as word delimiters,
and to induce syntax errors for any args not handled. Split
multi-echo echoes and comment each stage.
* sysdeps/unix/common/syscalls.list: Refine & correct signatures.
* sysdeps/unix/inet/syscalls.list: Likewise.
* sysdeps/unix/mman/syscalls.list: Likewise.
* sysdeps/unix/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/syscalls.list: Likewise.
* sysdeps/unix/sysv/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/powerpc/syscalls.list