Ulrich Drepper
c03c66ddb5
Update.
...
2004-12-06 Ulrich Drepper <drepper@redhat.com>
* libio/fileops.c (_IO_new_file_seekoff): Fix optimization of in-buffer
seek. Remove dead code.
2004-12-02 Jakub Jelinek <jakub@redhat.com>
* libio/Makefile (tests): Add bug-ungetc4.
* libio/bug-ungetc4.c: New test.
2004-12-06 22:39:13 +00:00
Ulrich Drepper
51cd2fbfb8
Update.
...
2004-11-04 Jakub Jelinek <jakub@redhat.com>
* libio/fileops.c (_IO_new_file_seekoff): If mode is 0 and
fp->_offset == _IO_pos_BAD, just call _IO_SYSSEEK (fp, 0, dir)
and if successful set fp->_offset.
* libio/Makefile (tests): Add bug-ungetc3.
* libio/bug-ungetc3.c: New test.
2004-11-09 07:05:27 +00:00
Ulrich Drepper
b5cc329c4f
2004-10-15 Jakub Jelinek <jakub@redhat.com>
...
* elf/dl-minimal.c (__chk_fail): New. Add rtld_hidden_def.
* sysdeps/unix/sysv/linux/readonly-area.c: New file.
* sysdeps/i386/i686/memmove.S (__memmove_chk): Add checking
routine.
* sysdeps/i386/i686/memcpy.S (__memcpy_chk): Likewise.
* sysdeps/i386/i686/mempcpy.S (__mempcpy_chk): Likewise.
* sysdeps/i386/i686/memset.S (__memset_chk): Likewise.
* sysdeps/i386/i686/memmove-chk.S: New file.
* sysdeps/i386/i686/memcpy-chk.S: Likewise.
* sysdeps/i386/i686/mempcpy-chk.S: Likewise.
* sysdeps/i386/i686/memset-chk.S: Likewise.
* sysdeps/generic/strcat-chk.c (__strcat_chk): Don't __chk_fail
if exactly fitting into buffer.
* sysdeps/generic/strncat-chk.c (__strncat_chk): Likewise.
* sysdeps/generic/readonly-area.c: New file.
* sysdeps/generic/strncpy-chk.c (__strncpy_chk): Only test
destlen once.
* sysdeps/x86_64/memset.S (__memset_chk): Add checking routine.
* sysdeps/x86_64/memcpy.S (__memcpy_chk): Likewise.
* sysdeps/x86_64/mempcpy.S (__memcpy_chk): Define to __mempcpy_chk.
* sysdeps/x86_64/memcpy-chk.S: New file.
* sysdeps/x86_64/mempcpy-chk.S: Likewise.
* sysdeps/x86_64/memset-chk.S: Likewise.
* sysdeps/x86_64/strcpy-chk.S: Likewise.
* sysdeps/x86_64/stpcpy-chk.S: Likewise.
* argp/argp-xinl.c (__OPTIMIZE__): Define to 1 instead of nothing.
* argp/argp-fs-xinl.c (__OPTIMIZE__): Likewise.
* debug/tst-chk1.c: New test.
* debug/tst-chk2.c: Likewise.
* debug/tst-chk3.c: Likewise.
* debug/test-strcpy_chk.c: Likewise.
* debug/test-stpcpy_chk.c: Likewise.
* debug/vsprintf_chk.c (__vsprintf_chk): If flags > 0, request
_IO_FLAGS2_CHECK_PERCENT_N. Add libc_hidden_def.
* debug/Makefile (routines): Add printf_chk, fprintf_chk, vprintf_chk,
vfprintf_chk, gets_chk and readonly-area.
(CFLAGS-*_chk.c): Set.
(tests): Add tst-chk1, tst-chk2, tst-chk3, test-strcpy_chk and
test-stpcpy_chk.
* debug/vprintf_chk.c: New file.
* debug/printf_chk.c: Likewise.
* debug/vfprintf_chk.c: Likewise.
* debug/fprintf_chk.c: Likewise.
* debug/gets_chk.c: Likewise.
* debug/chk_fail.c (__chk_fail): Add libc_hidden_def.
* debug/snprintf_chk.c (__snprintf_chk): Fix order of arguments
passed to __vsnprintf_chk.
* debug/Versions (libc): Export __printf_chk, __fprintf_chk,
__vprintf_chk, __vfprintf_chk and __gets_chk @GLIBC_2.3.4.
* debug/vsnprintf_chk.c (__vsnprintf_chk): Don't call
__vsnprintf, instead create a temporary file with
_IO_strn_jumps jumptable. If flags > 0, request
_IO_FLAGS2_CHECK_PERCENT_N. Add libc_hidden_def.
* libio/Makefile (headers): Add bits/stdio2.h.
* libio/stdio.h: Include <bits/stdio2.h> if __USE_FORTIFY_LEVEL.
(sprintf, snprintf, vsprintf, vsnprintf): Remove defines.
* libio/strfile.h (_IO_strnfile): New type.
(_IO_strn_jumps): New extern.
* libio/vsnprintf.c (_IO_strnfile): Remove.
(_IO_strn_jumps): Remove static.
* libio/bits/stdio2.h: New file.
* libio/vswprintf.c (_IO_strnfile): Rename type to...
(_IO_wstrnfile): ...this. Adjust all uses.
* libio/libio.h (_IO_FLAGS2_CHECK_PERCENT_N): Define.
* stdio-common/vfprintf.c (STR_LEN): Define.
(vfprintf): Add readonly_format variable.
Handle _IO_FLAGS2_CHECK_PERCENT_N.
(buffered_vfprintf): Copy _flags2.
* include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
__vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
__vfprintf_chk): New prototypes.
(__vsprintf_chk, __vsnprintf_chk): Add libc_hidden_proto.
* include/string.h (__memcpy_chk, __memmove_chk, __mempcpy_chk,
__memset_chk, __strcpy_chk, __stpcpy_chk, __strncpy_chk, __strcat_chk,
__strncat_chk): New prototypes.
* include/bits/string3.h: New file.
* include/sys/cdefs.h (__chk_fail): Add libc_hidden_proto
and rtld_hidden_proto.
* string/Makefile (headers): Add bits/string3.h.
* string/bits/string3.h (bcopy, bzero): New defines.
(memset, memcpy, memmove, strcpy, strncpy, strcat, strncat): Change
macros so that inlines are used only if unknown destination size
or side-effects in destination argument.
(mempcpy, stpcpy): Likewise. Protect with #ifdef __USE_GNU.
2004-09-16 Ulrich Drepper <drepper@redhat.com>
* debug/Makefile (routines): Add *_chk.
* debug/Versions (libc): Export __chk_fail, __memcpy_chk,
__memmove_chk, __mempcpy_chk, __memset_chk, __stpcpy_chk,
__strcat_chk, __strcpy_chk, __strncat_chk, __strncpy_chk,
__sprintf_chk, __vsprintf_chk, __snprintf_chk, __vsnprintf_chk
@GLIBC_2.3.4.
* debug/chk_fail.c: New file.
* debug/snprintf_chk.c: Likewise.
* debug/sprintf_chk.c: Likewise.
* debug/vsnprintf_chk.c: Likewise.
* debug/vsprintf_chk.c: Likewise.
* include/features.h (_FORTIFY_SOURCE): Document, handle.
(__USE_FORTIFY_LEVEL): Define.
(__GNUC_PREREQ): Move to earlier location.
* include/sys/cdefs.h (__chk_fail): New prototype.
* libio/bits/stdio.h (sprintf, vsprintf, snprintf, vsnprintf):
Define if __USE_FORTIFY_LEVEL.
* misc/sys/cdefs.h (__bos, __bos0): Define.
* string/string.h: Include <bits/string3.h> if __USE_FORTIFY_LEVEL.
* bits/string/string3.h: New header.
* sysdeps/generic/memcpy_chk.c: New file.
* sysdeps/generic/memmove_chk.c: Likewise.
* sysdeps/generic/mempcpy_chk.c: Likewise.
* sysdeps/generic/memset_chk.c: Likewise.
* sysdeps/generic/stpcpy_chk.c: Likewise.
* sysdeps/generic/strcat_chk.c: Likewise.
* sysdeps/generic/strcpy_chk.c: Likewise.
* sysdeps/generic/strncat_chk.c: Likewise.
* sysdeps/generic/strncpy_chk.c: Likewise.
2004-10-15 Jakub Jelinek <jakub@redhat.com>
* elf/dl-minimal.c (__chk_fail): New. Add rtld_hidden_def.
* sysdeps/unix/sysv/linux/readonly-area.c: New file.
* sysdeps/i386/i686/memmove.S (__memmove_chk): Add checking
routine.
* sysdeps/i386/i686/memcpy.S (__memcpy_chk): Likewise.
* sysdeps/i386/i686/mempcpy.S (__mempcpy_chk): Likewise.
* sysdeps/i386/i686/memset.S (__memset_chk): Likewise.
* sysdeps/i386/i686/memmove-chk.S: New file.
* sysdeps/i386/i686/memcpy-chk.S: Likewise.
* sysdeps/i386/i686/mempcpy-chk.S: Likewise.
* sysdeps/i386/i686/memset-chk.S: Likewise.
* sysdeps/generic/strcat-chk.c (__strcat_chk): Don't __chk_fail
if exactly fitting into buffer.
* sysdeps/generic/strncat-chk.c (__strncat_chk): Likewise.
* sysdeps/generic/readonly-area.c: New file.
* sysdeps/generic/strncpy-chk.c (__strncpy_chk): Only test
destlen once.
* sysdeps/x86_64/memset.S (__memset_chk): Add checking routine.
* sysdeps/x86_64/memcpy.S (__memcpy_chk): Likewise.
* sysdeps/x86_64/mempcpy.S (__memcpy_chk): Define to __mempcpy_chk.
* sysdeps/x86_64/memcpy-chk.S: New file.
* sysdeps/x86_64/mempcpy-chk.S: Likewise.
* sysdeps/x86_64/memset-chk.S: Likewise.
* sysdeps/x86_64/strcpy-chk.S: Likewise.
* sysdeps/x86_64/stpcpy-chk.S: Likewise.
* argp/argp-xinl.c (__OPTIMIZE__): Define to 1 instead of nothing.
* argp/argp-fs-xinl.c (__OPTIMIZE__): Likewise.
* debug/tst-chk1.c: New test.
* debug/tst-chk2.c: Likewise.
* debug/tst-chk3.c: Likewise.
* debug/test-strcpy_chk.c: Likewise.
* debug/test-stpcpy_chk.c: Likewise.
* debug/vsprintf_chk.c (__vsprintf_chk): If flags > 0, request
_IO_FLAGS2_CHECK_PERCENT_N. Add libc_hidden_def.
* debug/Makefile (routines): Add printf_chk, fprintf_chk, vprintf_chk,
vfprintf_chk, gets_chk and readonly-area.
(CFLAGS-*_chk.c): Set.
(tests): Add tst-chk1, tst-chk2, tst-chk3, test-strcpy_chk and
test-stpcpy_chk.
* debug/vprintf_chk.c: New file.
* debug/printf_chk.c: Likewise.
* debug/vfprintf_chk.c: Likewise.
* debug/fprintf_chk.c: Likewise.
* debug/gets_chk.c: Likewise.
* debug/chk_fail.c (__chk_fail): Add libc_hidden_def.
* debug/snprintf_chk.c (__snprintf_chk): Fix order of arguments
passed to __vsnprintf_chk.
* debug/Versions (libc): Export __printf_chk, __fprintf_chk,
__vprintf_chk, __vfprintf_chk and __gets_chk @GLIBC_2.3.4.
* debug/vsnprintf_chk.c (__vsnprintf_chk): Don't call
__vsnprintf, instead create a temporary file with
_IO_strn_jumps jumptable. If flags > 0, request
_IO_FLAGS2_CHECK_PERCENT_N. Add libc_hidden_def.
* libio/Makefile (headers): Add bits/stdio2.h.
* libio/stdio.h: Include <bits/stdio2.h> if __USE_FORTIFY_LEVEL.
(sprintf, snprintf, vsprintf, vsnprintf): Remove defines.
* libio/strfile.h (_IO_strnfile): New type.
(_IO_strn_jumps): New extern.
* libio/vsnprintf.c (_IO_strnfile): Remove.
(_IO_strn_jumps): Remove static.
* libio/bits/stdio2.h: New file.
* libio/vswprintf.c (_IO_strnfile): Rename type to...
(_IO_wstrnfile): ...this. Adjust all uses.
* libio/libio.h (_IO_FLAGS2_CHECK_PERCENT_N): Define.
* stdio-common/vfprintf.c (STR_LEN): Define.
(vfprintf): Add readonly_format variable.
Handle _IO_FLAGS2_CHECK_PERCENT_N.
(buffered_vfprintf): Copy _flags2.
* include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
__vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
__vfprintf_chk): New prototypes.
(__vsprintf_chk, __vsnprintf_chk): Add libc_hidden_proto.
* include/string.h (__memcpy_chk, __memmove_chk, __mempcpy_chk,
__memset_chk, __strcpy_chk, __stpcpy_chk, __strncpy_chk, __strcat_chk,
__strncat_chk): New prototypes.
* include/bits/string3.h: New file.
* include/sys/cdefs.h (__chk_fail): Add libc_hidden_proto
and rtld_hidden_proto.
* string/Makefile (headers): Add bits/string3.h.
* string/bits/string3.h (bcopy, bzero): New defines.
(memset, memcpy, memmove, strcpy, strncpy, strcat, strncat): Change
macros so that inlines are used only if unknown destination size
or side-effects in destination argument.
(mempcpy, stpcpy): Likewise. Protect with #ifdef __USE_GNU.
2004-09-16 Ulrich Drepper <drepper@redhat.com>
* debug/Makefile (routines): Add *_chk.
* debug/Versions (libc): Export __chk_fail, __memcpy_chk,
__memmove_chk, __mempcpy_chk, __memset_chk, __stpcpy_chk,
__strcat_chk, __strcpy_chk, __strncat_chk, __strncpy_chk,
__sprintf_chk, __vsprintf_chk, __snprintf_chk, __vsnprintf_chk
@GLIBC_2.3.4.
* debug/chk_fail.c: New file.
* debug/snprintf_chk.c: Likewise.
* debug/sprintf_chk.c: Likewise.
* debug/vsnprintf_chk.c: Likewise.
* debug/vsprintf_chk.c: Likewise.
* include/features.h (_FORTIFY_SOURCE): Document, handle.
(__USE_FORTIFY_LEVEL): Define.
(__GNUC_PREREQ): Move to earlier location.
* include/sys/cdefs.h (__chk_fail): New prototype.
* libio/bits/stdio.h (sprintf, vsprintf, snprintf, vsnprintf):
Define if __USE_FORTIFY_LEVEL.
* misc/sys/cdefs.h (__bos, __bos0): Define.
* string/string.h: Include <bits/string3.h> if __USE_FORTIFY_LEVEL.
* bits/string/string3.h: New header.
* sysdeps/generic/memcpy_chk.c: New file.
* sysdeps/generic/memmove_chk.c: Likewise.
* sysdeps/generic/mempcpy_chk.c: Likewise.
* sysdeps/generic/memset_chk.c: Likewise.
* sysdeps/generic/stpcpy_chk.c: Likewise.
* sysdeps/generic/strcat_chk.c: Likewise.
* sysdeps/generic/strcpy_chk.c: Likewise.
* sysdeps/generic/strncat_chk.c: Likewise.
* sysdeps/generic/strncpy_chk.c: Likewise.
2004-10-18 04:17:19 +00:00
Ulrich Drepper
eb35b0972f
Update.
...
* sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Fill in c_ispeed
and c_ospeed fields.
* sysdeps/unix/sysv/linux/speed.c (cfsetospeed): Set c_ospeed field.
(cfsetispeed): Set c_ispeed field.
* sysdeps/unix/sysv/linux/tcsetattr.c (IBAUD0): Define unconditionally
to match corresponding speed.c code.
2003-09-06 Ulrich Drepper <drepper@redhat.com>
* libio/wfileops.c (_IO_wfile_underflow): Mark beginning of the
narrow character buffer.
* libio/Makefile: Add rules to build and run bug-ftell.
* libio/bug-ftell.c: New file.
* stdio-common/vfprintf.c: Don't use the first grouping number twice.
* stdio-common/vfscanf.c (vfscanf): Fix recognition of characters
matching the decimal point and possibly leading the thousands
separator. This caused the recognition of thousands separators to
always fail.
2003-09-05 Ulrich Drepper <drepper@redhat.com>
* libio/fileops.c (_IO_new_file_overflow): Handle switching to
write mode from read in backup buffer.
* libio/Makefile (tests): Add bug-ungetc2.
* libio/bug-ungetc2.c: New file.
2003-09-05 Roland McGrath <roland@redhat.com>
>>>>>>> 1.7905
* sysdeps/unix/sysv/linux/linux_fsinfo.h: Define VXFS_SUPER_MAGIC.
2003-09-06 09:56:14 +00:00
Ulrich Drepper
f1c30c98b9
(CFLAGS-oldtmpfile.c): Add -fexceptions.
2003-09-02 07:14:15 +00:00
Ulrich Drepper
0261d33f87
Update.
...
2003-08-29 Jakub Jelinek <jakub@redhat.com>
* libio/Makefile: Compile fputc.c, fputwc.c, freopen64.c, freopen.c,
fseek.c, fseeko64.c, fseeko.c, ftello64.c, ftello.c, fwide.c, getc.c,
getchar.c, getwc.c, getwchar.c, iofclose.c, iofflush.c, iofgetpos64.c,
iofgetpos.c, iofgets.c, iofgetws.c, iofputs.c, iofputws.c, iofread.c,
iofsetpos64.c, iofsetpos.c, ioftell.c, iofwrite.c, iogetdelim.c,
iogetline.c, iogets.c, iogetwline.c, ioputs.c, ioseekoff.c,
ioseekpos.c, iosetbuffer.c, iosetvbuf.c, ioungetc.c, ioungetwc.c,
oldfileops.c, oldiofclose.c, oldiofgetpos64.c, oldiofgetpos.c,
oldiofsetpos64.c, oldiofsetpos.c, peekc.c, putc.c, putchar.c, putwc.c,
putwchar.c and rewind.c with exceptions.
* sysdeps/generic/bits/stdio-lock.h (_IO_acquire_lock,
_IO_release_lock): Define.
* libio/fileops.c (_IO_new_file_underflow): Use it.
* libio/fputc.c (fputc): Likewise.
* libio/fputwc.c (fputwc): Likewise.
* libio/freopen64.c (freopen64):
* libio/freopen.c (freopen): Likewise.
* libio/fseek.c (fseek): Likewise.
* libio/fseeko64.c (fseeko64): Likewise.
* libio/fseeko.c (fseeko): Likewise.
* libio/ftello64.c (ftello64): Likewise.
* libio/ftello.c (ftello): Likewise.
* libio/fwide.c (fwide): Likewise.
* libio/getc.c (_IO_getc): Likewise.
* libio/getchar.c (getchar): Likewise.
* libio/getwc.c (_IO_getwc): Likewise.
* libio/getwchar.c (getwchar): Likewise.
* libio/iofclose.c (_IO_new_fclose):
* libio/iofflush.c (_IO_fflush): Likewise.
* libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
* libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
* libio/iofgets.c (_IO_fgets): Likewise.
* libio/iofgetws.c (fgetws): Likewise.
* libio/iofputs.c (_IO_fputs):
* libio/iofputws.c (_IO_fputs): Likewise.
* libio/iofread.c (_IO_fread): Likewise.
* libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise.
* libio/iofsetpos.c (_IO_new_fsetpos): Likewise.
* libio/ioftell.c (_IO_ftell): Likewise.
* libio/iofwrite.c (_IO_fwrite): Likewise.
* libio/iogetdelim.c (_IO_getdelim): Likewise.
* libio/iogets.c (_IO_gets): Likewise.
* libio/ioputs.c (_IO_puts): Likewise.
* libio/ioseekoff.c (_IO_seekoff): Likewise.
* libio/ioseekpos.c (_IO_seekpos): Likewise.
* libio/iosetbuffer.c (_IO_setbuffer): Likewise.
* libio/iosetvbuf.c (_IO_setvbuf): Likewise.
* libio/ioungetc.c (_IO_ungetc): Likewise.
* libio/ioungetwc.c (ungetwc): Likewise.
* libio/oldiofclose.c (_IO_old_fclose): Likewise.
* libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
* libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
* libio/oldiofsetpos64.c (_IO_old_fsetpos64): Likewise.
* libio/oldiofsetpos.c (_IO_old_fsetpos): Likewise.
* libio/peekc.c (_IO_peekc_locked): Likewise.
* libio/putc.c (_IO_putc): Likewise.
* libio/putchar.c (putchar): Likewise.
* libio/putwc.c (putwc): Likewise.
* libio/putwchar.c (putwchar): Likewise.
* libio/rewind.c (rewind): Likewise.
* libio/wfileops.c (_IO_wfile_underflow): Likewise.
2003-08-29 19:58:49 +00:00
Roland McGrath
369b849f1a
* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
...
INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
(INLINE_SYSCALL): Use that.
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
(INLINE_SYSCALL): Use that.
* sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
(INLINE_SYSCALL): Use that.
* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
dl-sysdep.h.
(SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
(__INTERNAL_SYSCALL_STRING): Define.
* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
dl-sysdep.h.
(SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
(__INTERNAL_SYSCALL_STRING): Define.
* sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
__SYSCALL_STRING to inline_syscall*.
(INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
New macros.
(inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
inline_syscall4, inline_syscall5, inline_syscall6): Add string
argument.
2002-10-24 Roland McGrath <roland@redhat.com>
* libio/bug-wfflush.c: New file.
* libio/Makefile (tests): Add bug-wfflush.
2002-10-24 18:49:00 +00:00
Ulrich Drepper
b50f38778c
Update.
...
2002-08-26 Ulrich Drepper <drepper@redhat.com>
* libio/Makefile (tests): Add bug-fopena+.
* libio/bug-fopena+.c: New file.
* stdio-common/tst-swprintf.c (main): Add casts to avoid warnings.
* locale/xlocale.c: Fix the last change. The variable still has
to end in _data.
* sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
(__libc_tsd_set): Add _data prefix to variable name.
2002-08-27 06:41:29 +00:00
Ulrich Drepper
442685a8ba
Update.
...
2002-08-26 Ulrich Drepper <drepper@redhat.com>
* libio/wfileops.c (_IO_wfile_seekoff): Set fp->_offset after
finding the read position [PR libc/4265].
* libio/Makefile (tests): Add bug-rewind2.
* libio/bug-rewind2.c: New file.
2002-08-26 08:08:50 +00:00
Roland McGrath
fc77d66abf
* libio/fileops.c (_IO_file_seekoff_mmap): Leave read pointers at EOF
...
if seek would go past it.
(mmap_remap_check): If file position is at or past EOF after check,
leave read pointers at EOF and don't seek.
* libio/tst-mmap-offend.c: New file.
* libio/Makefile (tests): Add it.
2002-08-15 23:57:00 +00:00
Roland McGrath
acbee5f637
* libio/fileops.c (_IO_file_sync_mmap): New function.
...
(_IO_file_jumps_mmap): Use it.
(_IO_file_underflow_mmap): Rewritten. If after EOF or fflush,
repeat the stat check and resize the mapped buffer as necessary.
2002-07-31 Roland McGrath <roland@frob.com>
* libio/fileops.c (decide_maybe_mmap): New static function.
Code taken from libio/iofopen.c:__fopen_maybe_mmap to try to
mmap the file contents. Then switch the jump tables to the mmap
tables if it worked, or the vanilla file tables if not.
(_IO_file_underflow_maybe_mmap): New function.
(_IO_file_seekoff_maybe_mmap): New function.
(_IO_file_xsgetn_maybe_mmap): New function.
(_IO_file_jumps_maybe_mmap): New variable, jump table using those.
* libio/libioP.h: Declare those.
* libio/wfileops.c (_IO_wfile_underflow_maybe_mmap): New function.
(_IO_wfile_jumps_maybe_mmap): New variable, jump table using that.
* libio/iofopen.c (__fopen_maybe_mmap): Don't try to mmap here.
If the stream is read-only, set its jump tables to those new ones.
* libio/iofdopen.c (_IO_new_fdopen) [_G_HAVE_MMAP]: Set the initial
jump tables to the maybe_mmap ones, and don't call __fopen_maybe_mmap.
We need the tables set before _IO_file_attach.
* libio/tst-mmap-eofsync.c: New file.
* libio/tst-mmap-fflushsync.c: New file.
* libio/bug-mmap-fflush.c: New file.
* libio/tst-mmap2-eofsync.c: New file.
* libio/Makefile (tests): Add them.
* libio/wfileops.c (_IO_wfile_underflow_mmap): Don't set EOF bit when
_IO_file_underflow_mmap fails, it already set the appropriate bit.
2002-08-02 01:29:37 +00:00
Roland McGrath
b264e1d19a
2002-07-31 Jeff Bailey <jbailey@gnu.org>
...
* libio/stdio.h (sys_errlist, sys_nerr, _sys_errlist, _sys_nerr):
Declarations moved to <bits/sys_errlist.h>. Include that file.
* libio/Makefile (headers): Add bits/sys_errlist.h to the list.
* sysdeps/generic/bits/sys_errlist.h: New file. This does *not*
declare sys_errlist and sys_nerr.
* sysdeps/unix/sysv/linux/bits/sys_errlist.h: New file. Does
provide declarations.
2002-07-31 23:30:24 +00:00
Ulrich Drepper
405550bf78
Update.
...
2002-07-24 Ulrich Drepper <drepper@redhat.com>
* locale/hashval.h: Make more self-containedby defining LONG_BITS.
* locale/programs/simple-hash.c: Remove LONG_BITS definition.
* locale/programs/locarchive.c (add_locale_to_archive): Correct
test to detect duplicate locales.
* libio/fileops.c (_IO_new_file_seekoff): Fail if relative
position would be before beginning of file.
(_IO_file_seekoff_mmap): Likewise.
* libio/Makefile (tests): Add bug-fseek.
* libio/bug-fseek.c: New file.
* intl/explodename.c: Remove support for CEN-style locale variables.
It was never used and shouldn't be since it's not portable.
* intl/finddomain.c: Likewise.
* intl/l10nflist.c: Likewise.
* intl/loadinfo.h: Likewise.
* locale/findlocale.c: Likewise.
2002-07-24 10:44:53 +00:00
Roland McGrath
0e94c2176b
2002-07-24 Roland McGrath <roland@frob.com>
...
* libio/Makefile (tests): Add bug-ungetc.
* libio/bug-ungetc.c: New file.
2002-07-24 09:34:59 +00:00
Ulrich Drepper
706d1dee46
Update.
...
2002-07-15 Ulrich Drepper <drepper@redhat.com>
* libio/wfileops.c (_IO_wfile_seekoff): Reposition wide pointers
and adjust state for seek position. [PR libc/4070]
* libio/Makefile (tests): Add bug-rewind.
* libio/bug-rewind.c: New file.
2002-07-15 23:37:22 +00:00
Ulrich Drepper
81c64d407c
Update.
...
2002-07-10 Ulrich Drepper <drepper@redhat.com>
* Versions.def [libpthread]: Add GLIBC_2.2.6.
* posix/Versions [libc] (GLIBC_2.2.6): Add __nanosleep.
2002-07-06 Bruno Haible <bruno@clisp.org>
* sysdeps/unix/sysv/sysv4/bits/sigset.h (__NSSBITS): Correct value.
* sysdeps/unix/sysv/linux/bits/statvfs.h (ST_NODIRATIME): Set to 2048.
2002-07-10 23:09:16 +00:00
Ulrich Drepper
c429248993
Update.
...
* libio/fileops.c (_IO_file_xsgetn_mmap): Always set EOF flag is
not enough content is available.
* libio/tst-eof.c: New file.
* libio/Makefile (tests): Add tst-eof.
* libio/fileops.c (_IO_file_underflow_mmap): Read a single byte to
update atime.
* libio/tst-atime.c: New file.
* libio/Makefile (tests): Add tst-atime.
2002-06-25 19:33:56 +00:00
Ulrich Drepper
bff334e090
Update.
...
2002-06-17 Jakub Jelinek <jakub@redhat.com>
* elf/dl-lookup.c (_dl_debug_bindings): Use type_class 4 for TLS
lookups.
* elf/rtld.c (dl_main): Move TLS setup code before LD_TRACE_PRELINKING
code. Print TLS modid and offset for modules containing PT_TLS
segments.
2002-06-09 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/i386/dl-brk.c: Move...
* sysdeps/unix/sysv/linux/dl-brk.c: ...here.
* sysdeps/unix/sysv/linux/i386/dl-sbrk.c: Move...
* sysdeps/unix/sysv/linux/dl-sbrk.c: ...here.
2002-06-07 Jakub Jelinek <jakub@redhat.com>
* nss/getXXbyYY_r.c (NEW, NEW1): Define.
(NEW (REENTRANT_NAME)): Strong alias to INTERNAL (REENTRANT_NAME).
(REENTRANT_NAME@@GLIBC_2.1.2): Use NEW (REENTRANT_NAME).
* nss/getXXent_r.c (NEW, NEW1): Define.
(NEW (REENTRANT_GETNAME)): Strong alias to
INTERNAL (REENTRANT_GETNAME).
(REENTRANT_GETNAME@@GLIBC_2.1.2): Use NEW (REENTRANT_GETNAME).
2002-06-21 Ulrich Drepper <drepper@redhat.com>
* libio/fileops.c (_IO_file_setbuf_mmap): New function.
(_IO_file_jumps_mmap): Use it.
* libio/iosetvbuf.c: Don't call _IO_WSETBUF.
* libio/libioP.h: Remove _IO_wdefault_setbuf and
_IO_wdefault_setbuf_internal prorotypes. Add _IO_file_setbuf_mmap
prototype.
* libio/wfileops.c (_IO_wfile_setbuf): Removed.
(_IO_wfile_jumps_mmap): Don't use it anymore.
* libio/wgenops.c (_IO_wdefault_setbuf): Removed.
* libio/memstream.c (_IO_wmem_jumps): Use _IO_default_setbuf not
_IO_wdefault_setbuf.
* libio/vswprintf.c (_IO_wstrn_jumps): Likewise.
* libio/wstrops.c (_IO_wstr_jumps): Likewise.
* stdio-common/vfprintf.c (_IO_helper_jumps): Likewise.
2002-06-05 Jakub Jelinek <jakub@redhat.com>
* libio/Makefile (tests): Add tst-mmap-setvbuf.
* libio/tst-mmap-setvbuf.c: New test.
2002-06-22 05:24:45 +00:00
Ulrich Drepper
c9f1fc22d1
(bug-ungetwc2-ENV): Define.
2002-05-14 21:26:41 +00:00
Ulrich Drepper
737fa90def
Update.
...
* libio/Makefile (tests): Add bug-ungetwc2.
* libio/bug-ungetwc2.c: New file.
2002-04-03 09:26:58 +00:00
Ulrich Drepper
3384a8d67c
Update.
...
* libio/bug-ungetwc1.c: New file.
* libio/Makefile (tests): Add bug-ungetwc1.
* libio/fileops.c (_IO_new_file_close_it): Only call _IO_do_flush
if stream was last used for writing.
2002-04-03 05:18:32 +00:00
Ulrich Drepper
77fe0b9cd8
Update.
...
2002-02-25 Ulrich Drepper <drepper@redhat.com>
* assert/assert-perr.c: Use INTUSE to reference functions and variables
inside libc itself. Ise INTDEF and INTDEF2 to define appropriate
aliases. Add prototypes for the new aliases.
* assert/assert.c: Likewise.
* include/libc-symbols.h: Likewise.
* include/stdio.h: Likewise.
* include/netinet/in.h: Likewise.
* include/rpc/auth.h: Likewise.
* include/rpc/auth_unix.h: Likewise.
* include/rpc/key_prot.h: Likewise.
* include/rpc/pmap_prot.h: Likewise.
* include/rpc/pmap_rmt.h: Likewise.
* include/rpc/rpc_msg.h: Likewise.
* include/rpc/xdr.h: Likewise.
* inet/gethstbyad_r.c: Likewise.
* inet/gethstbynm2_r.c: Likewise.
* inet/gethstbynm_r.c: Likewise.
* inet/gethstent_r.c: Likewise.
* inet/in6_addr.c: Likewise.
* libio/__fpurge.c: Likewise.
* libio/filedoalloc.c: Likewise.
* libio/fileops.c: Likewise.
* libio/ftello.c: Likewise.
* libio/ftello64.c: Likewise.
* libio/genops.c: Likewise.
* libio/iofclose.c: Likewise.
* libio/iofdopen.c: Likewise.
* libio/iofflush.c: Likewise.
* libio/iofflush_u.c: Likewise.
* libio/iofgetpos.c: Likewise.
* libio/iofgetpos64.c: Likewise.
* libio/iofgets.c: Likewise.
* libio/iofgets_u.c: Likewise.
* libio/iofopen.c: Likewise.
* libio/iofopncook.c: Likewise.
* libio/iofputs.c: Likewise.
* libio/iofread.c: Likewise.
* libio/iofread_u.c: Likewise.
* libio/iofsetpos.c: Likewise.
* libio/iofsetpos64.c: Likewise.
* libio/ioftell.c: Likewise.
* libio/iofwrite.c: Likewise.
* libio/iogetline.c: Likewise.
* libio/iogets.c: Likewise.
* libio/iogetwline.c: Likewise.
* libio/iolibio.h: Likewise.
* libio/iopadn.c: Likewise.
* libio/iopopen.c: Likewise.
* libio/ioseekoff.c: Likewise.
* libio/ioseekpos.c: Likewise.
* libio/iosetbuffer.c: Likewise.
* libio/iosetvbuf.c: Likewise.
* libio/ioungetc.c: Likewise.
* libio/ioungetwc.c: Likewise.
* libio/iovdprintf.c: Likewise.
* libio/iovsprintf.c: Likewise.
* libio/iovsscanf.c: Likewise.
* libio/libioP.h: Likewise.
* libio/memstream.c: Likewise.
* libio/obprintf.c: Likewise.
* libio/oldfileops.c: Likewise.
* libio/oldiofclose.c: Likewise.
* libio/oldiofdopen.c: Likewise.
* libio/oldiofgetpos.c: Likewise.
* libio/oldiofgetpos64.c: Likewise.
* libio/oldiofopen.c: Likewise.
* libio/oldiofsetpos.c: Likewise.
* libio/oldiofsetpos64.c: Likewise.
* libio/oldiopopen.c: Likewise.
* libio/oldstdfiles.c: Likewise.
* libio/putc.c: Likewise.
* libio/setbuf.c: Likewise.
* libio/setlinebuf.c: Likewise.
* libio/stdfiles.c: Likewise.
* libio/stdio.c: Likewise.
* libio/strops.c: Likewise.
* libio/vasprintf.c: Likewise.
* libio/vscanf.c: Likewise.
* libio/vsnprintf.c: Likewise.
* libio/vswprintf.c: Likewise.
* libio/wfiledoalloc.c: Likewise.
* libio/wfileops.c: Likewise.
* libio/wgenops.c: Likewise.
* libio/wstrops.c: Likewise.
* malloc/mtrace.c: Likewise.
* misc/error.c: Likewise.
* misc/syslog.c: Likewise.
* nss/getXXbyYY_r.c: Likewise.
* nss/getXXent_r.c: Likewise.
* nss/hosts-lookup.c: Likewise.
* stdio-common/getw.c
* stdio-common/printf-prs.c: Likewise.
* stdio-common/printf_fp.c: Likewise.
* stdio-common/printf_size.c: Likewise.
* stdio-common/putw.c: Likewise.
* stdio-common/scanf.c: Likewise.
* stdio-common/sprintf.c: Likewise.
* stdio-common/tmpfile64.c: Likewise.
* stdio-common/vfprintf.c: Likewise.
* stdio-common/vfscanf.c: Likewise.
* stdlib/strfmon.c: Likewise.
* sunrpc/auth_des.c: Likewise.
* sunrpc/auth_none.c: Likewise.
* sunrpc/auth_unix.c: Likewise.
* sunrpc/authdes_prot.c: Likewise.
* sunrpc/authuxprot.c: Likewise.
* sunrpc/clnt_perr.c: Likewise.
* sunrpc/clnt_raw.c: Likewise.
* sunrpc/clnt_tcp.c: Likewise.
* sunrpc/clnt_udp.c: Likewise.
* sunrpc/clnt_unix.c: Likewise.
* sunrpc/key_call.c: Likewise.
* sunrpc/key_prot.c: Likewise.
* sunrpc/openchild.c: Likewise.
* sunrpc/pm_getmaps.c: Likewise.
* sunrpc/pm_getport.c: Likewise.
* sunrpc/pmap_clnt.c: Likewise.
* sunrpc/pmap_prot.c: Likewise.
* sunrpc/pmap_prot2.c: Likewise.
* sunrpc/pmap_rmt.c: Likewise.
* sunrpc/rpc_cmsg.c: Likewise.
* sunrpc/rpc_prot.c: Likewise.
* sunrpc/svc_authux.c: Likewise.
* sunrpc/svc_raw.c: Likewise.
* sunrpc/svc_simple.c: Likewise.
* sunrpc/svc_tcp.c: Likewise.
* sunrpc/svc_udp.c: Likewise.
* sunrpc/svc_unix.c: Likewise.
* sunrpc/xdr.c: Likewise.
* sunrpc/xdr_array.c: Likewise.
* sunrpc/xdr_mem.c: Likewise.
* sunrpc/xdr_rec.c: Likewise.
* sunrpc/xdr_ref.c: Likewise.
* sunrpc/xdr_stdio.c: Likewise.
* sysdeps/generic/_strerror.c: Likewise.
* sysdeps/generic/printf_fphex.c: Likewise.
* sysdeps/generic/tmpfile.c: Likewise.
* sysdeps/gnu/errlist.awk: Likewise.
* sysdeps/gnu/errlist.c: Likewise.
* libio/Makefile (routines): Remove iosprint.
* libio/iosprintf.c: Removed
2002-02-26 01:45:59 +00:00
Ulrich Drepper
c7509e31d1
Update.
...
* libio/Makefile (tests): Add tst-sscanf.
* libio/tst-sscanf.c: New file.
2001-08-22 18:40:06 +00:00
Ulrich Drepper
cc7f258f32
Update.
...
2001-08-09 Ulrich Drepper <drepper@redhat.com>
* stdio-common/vfscanf.c: Fix handling of %[] for COMPILE_WSCANF.
* libio/Makefile (tests): Add tst-swscanf.
* libio/tst-swscanf.c: New file.
2001-08-09 19:10:37 +00:00
Ulrich Drepper
40a982a9e1
Update.
...
2001-08-09 Ulrich Drepper <drepper@redhat.com>
* libio/wfileops.c (_IO_wfile_seekoff): Don't even try to handle
seeking with backup buffer present.
Correct determining of internal buffer position.
Reset also wide buffers if we reset the internal buffers.
* libio/iofwide.c (_IO_fwide): Always determine file offset for wide
streams.
* libio/ioseekoff.c: Catch one unimplemented case.
* libio/ftello.c: Don't abort if the wide stream has backup buffer.
* libio/ftello64.c: Likewise.
* libio/iofgetpos.c: Likewise.
* libio/iofgetpos64.c: Likewise.
* libio/ftell.c: Likewise.
* libio/Makefile (tests): Add tst-ungetwc2.
* libio/tst-ungetwc2.c: New file.
2001-08-09 08:50:50 +00:00
Ulrich Drepper
8f739934b0
Update.
...
* libio/ioungetwc.c (ungetwc): Orient stream first.
* libio/Makefile (tests): Add tst-ungetwc1.
* libio/tst-ungetwc1.c: New file.
2001-08-09 02:01:10 +00:00
Ulrich Drepper
5e473a7146
update.
...
* libio/wfileops.c (_IO_wfile_underflow): Remove incorrect test
for possible conversion using __codecvt_do_in.
* libio/Makefile (tests): Add tst-fgetws.
* libio/tst-fgetws.c: New file.
* libio/iofgetws.c: Use _IO_ferror_unlocked macros instead of
coding the test here.
2001-08-09 00:11:12 +00:00
Ulrich Drepper
277f8cdf98
Update.
...
* libio/Makefile: Add rules to check output of tst-fopenloc and
for memory leaks.
* libio/tst-fopenloc.c: New file.
2001-07-27 18:09:56 +00:00
Roland McGrath
35c53530e9
2001-07-20 Roland McGrath <roland@frob.com>
...
* libio/stdio_ext.h: Moved to ...
* stdio-common/stdio_ext.h: ... here.
* libio/Makefile (headers): Move stdio_ext.h from here ...
* stdio-common/Makefile (headers): ... to here.
* include/stdio_ext.h: New file.
* stdio/Makefile (routines): Add the stdio_ext.h functions here.
* stdio/Versions (GLIBC_2.2.4): Export the stdio_ext.h functions.
* stdio/__flbf.c: New file.
* stdio/__fbufsize.c: New file.
* stdio/__fpending.c: New file.
* stdio/__fpurge.c: New file.
* stdio/__freadable.c: New file.
* stdio/__freading.c: New file.
* stdio/__fsetlocking.c: New file.
* stdio/__fwritable.c: New file.
* stdio/__fwriting.c: New file.
2001-07-21 05:09:59 +00:00
Andreas Jaeger
41bdb6e20c
Update to LGPL v2.1.
...
2001-07-06 Paul Eggert <eggert@twinsun.com>
* manual/argp.texi: Remove ignored LGPL copyright notice; it's
not appropriate for documentation anyway.
* manual/libc-texinfo.sh: "Library General Public License" ->
"Lesser General Public License".
2001-07-06 Andreas Jaeger <aj@suse.de>
* All files under GPL/LGPL version 2: Place under LGPL version
2.1.
2001-07-06 04:58:11 +00:00
Ulrich Drepper
1dc843f70a
Update.
...
2001-04-09 Ulrich Drepper <drepper@redhat.com>
* libio/Makefile (distribute): Add fd_to_filename.h.
2001-04-10 03:10:20 +00:00
Ulrich Drepper
0a04075ed9
Update.
...
2001-03-26 Ulrich Drepper <drepper@redhat.com>
* libio/Makefile (tests): Add tst-ext.
* libio/tst-ext.c: New file.
* libio/iosetvbuf.c (_IO_setvbuf): Clear line buffer flag for _IONBF.
2001-03-27 00:16:51 +00:00
Andreas Jaeger
2632a4ccb4
Whitespace cleanup.
2001-02-12 14:24:51 +00:00
Andreas Jaeger
b647f210e6
Update.
...
2001-02-12 Andreas Jaeger <aj@suse.de>
* posix/Makefile (tests): Don't run bug-regex2 when
cross-compiling.
* libio/Makefile (tests): Don't run test-freopen when
cross-compiling.
* manual/stdio.texi (Streams and I18N): Fix typos.
2001-02-12 14:23:41 +00:00
Andreas Jaeger
5a7eedfbe6
Use run_program_prefix.
2001-02-11 12:07:07 +00:00
Ulrich Drepper
dabb1db4d1
Update.
...
* sysdeps/alpha/Dist: Add alphaev6/stxncpy.S and alphaev6/stxcpy.S.
* sysdeps/unix/sysv/aix/Dist: Add uitrunc.c, savef.S, and restf.S.
* dlfcn/Makefile (distribute): Add errmsg1mod.c.
* Makefile (distribute): Add include/libc-internal.h.
* libio/Makefile (distribute): Avoid overwriting.
2001-01-07 07:37:31 +00:00
Ulrich Drepper
897d4284e9
Update.
...
* libio/Makefile: Add rules to build and run test-freopen.
* libio/test-freopen.c: New file.
* libio/test-freopen.sh: New file.
2000-11-17 00:27:46 +00:00
Ulrich Drepper
a91d3cd37b
Update.
...
* libio/Makefile (headers): Add stdio_ext.h.
(routines): Add __fbufsize, __freading, __fwriting, __freadable,
__fwritable, __flbf, __fpurge, __fpending, and __fsetlocking.
* libio/Versions [libc] (GLIBC_2.2): Add __fbufsize, __freading,
__fwriting, __freadable, __fwritable, __flbf, __fpurge, __fpending,
__fsetlocking, and _flushlbf.
* libio/__fbufsize.c: New file.
* libio/__flbf.c: New file.
* libio/__fpending.c: New file.
* libio/__fpurge.c: New file.
* libio/__freadable.c: New file.
* libio/__freading.c: New file.
* libio/__fsetlocking.c: New file.
* libio/__fwritable.c: New file.
* libio/__fwriting.c: New file.
* libio/stdio_ext.h: New file.
* libio/genops.c (_IO_flush_all_linebuffered): Add alias _flushlbf.
* libio/libio.h (_IO_USER_LOCK): Define.
2000-09-01 08:56:06 +00:00
Ulrich Drepper
46e4bd3b8e
Update.
...
* libio/stdio.h: Add fmemopen prototype.
2000-08-25 Andreas Jaeger <aj@suse.de>
* libio/Makefile (routines): Add fmemopen.
(tests): Add test-fmemopen.
* libio/Versions: Add fmemopen with version GLIBC_2.2.
* libio/test-fmemopen.c: New file.
* libio/fmemopen.c: New file.
Patches by Hanno Mueller <kontakt@hanno.de>.
2000-08-28 Ulrich Drepper <drepper@redhat.com>
2000-08-29 02:54:55 +00:00
Ulrich Drepper
21cea68e86
Enable exception handling for genops, wgenops, fileops, and wfileops.
2000-08-01 21:30:45 +00:00
Ulrich Drepper
a3b231b751
Update.
...
* libio/Makefile: Add rules build, run, and distribute tst-widetext.c.
* libio/tst-widetext.c: New file.
* libio/tst-widetext.input: New file.
* libio/iogetwline.c (_IO_getwline_info): Pretty print.
2000-07-25 21:09:46 +00:00
Ulrich Drepper
d052b31b79
Update.
...
* 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.
2000-07-21 06:15:13 +00:00
Ulrich Drepper
9c38a68999
Update.
...
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-20 08:56:12 +00:00
Ulrich Drepper
e8595e842f
Update.
...
* libio/Makefile (tests): Add tst-getwc and tst_putwc.
(CFLAGS-tst_putwc.c): New definition.
* libio/tst_getwc.c: New file.
* libio/tst_getwc.input: New file.
* libio/tst_putwc.c: New file.
2000-06-23 06:22:36 +00:00
Roland McGrath
1c479f72fe
* libio/Makefile (headers): Add bits/stdio-lock.h here.
...
* sysdeps/mach/hurd/bits/stdio-lock.h: New file.
2000-03-27 03:57:46 +00:00
Andreas Schwab
3944f99e84
* libio/Makefile (routines): Add fwprintf.
1999-07-20 07:57:14 +00:00
Ulrich Drepper
f042f18f93
Update.
...
1999-06-21 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* libio/Makefile (routines): Add putwchar and putwchar_u.
* libio/putwchar.c: Include <wchar.h> instead of "stdio.h".
* libio/putwchar_u.c: Likewise. Use _IO_stdout instead of
stdout. Fix parameter name.
* libio/getchar.c: Consistently use _IO_stdin instead of stdin.
* libio/getchar_u.c: Likewise.
* libio/putchar_u.c: Use _IO_stdout instead of stdout.
1999-06-21 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* include/features.h (__GNUC_PREREQ): Don't generate `defined' via
macro expansion---it's undefined. Properly parenthesize
substituted parameters.
(__GLIBC_PREREQ): Likewise.
1999-06-21 16:46:16 +00:00
Ulrich Drepper
655c069718
Update.
...
1999-06-18 Thorsten Kukuk <kukuk@suse.de>
* sysdeps/alpha/atomicity.h: Correct counting of subsections.
1999-06-17 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* stdlib/tst-strtoll.c: Avoid warning about huge constant.
1999-06-20 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* stdio-common/vfprintf.c (group_member): Make parameters and
return types pointers to CHAR_T instead of UCHAR_T.
(vfprintf): Change type of work_buffer, workend and string to
CHAR_T pointer/array.
(process_arg, process_string_arg): Adjust/remove casts. Add
missing use of L_ macro.
(printf_unknown): Add missing uses of L_ macro.
1999-06-20 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* wcsmbs/wcschrnul.c: Explicitly cast return value to avoid
warning.
1999-06-20 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* libio/wgenops.c (__wuflow): Fix use of WEOF vs. EOF. Call
_IO_switch_to_wget_mode instead of _IO_switch_to_get_mode.
(__wunderflow): Likewise.
(_IO_switch_to_wget_mode): Likewise.
(_IO_init_wmarker): Likewise.
* libio/wfileops.c (_IO_wfile_seekoff): Call
_IO_switch_to_wget_mode, not _IO_switch_to_get_mode.
(_IO_wfile_jumps): Fix pbackfail entry.
* libio/iosetvbuf.c (_IO_setvbuf): Only call wide char setbuf
function if the stream is currently unoriented.
1999-06-19 Zack Weinberg <zack@rabi.columbia.edu>
* wcsmbs/wchar.h: Define __need___va_list before including stdarg.h.
Wrap all wide stream functions with #ifdef __USE_ISOC9X. Use
__gnuc_va_list in v*w(printf|scanf) prototypes.
1999-06-20 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* libio/oldiopopen.c (_IO_old_proc_open): Apply change from
1999-03-29 to iopopen also here.
Reported by Richard Braakman <dark@xs4all.nl>.
1999-06-20 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* include/features.h: Use __GNUC_PREREQ.
* sysdeps/i386/fpu/bits/mathinline.h: Likewise
1999-06-19 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* stdio-common/vfscanf.c (ungetc, inchar) [COMPILE_WPRINTF]:
Change EOF to WEOF and remove cast.
(UNGETC): Remove macro.
(_IO_vfwscanf): Change isspace to ISSPACE and UNGETC to ungetc.
* stdio-common/printf-parse.h (find_spec) [!COMPILE_WPRINTF]:
Change ISASCII to isascii and MBRLEN to mbrlen.
(parse_one_spec): Compare info.spec always against wchar_t
values.
* stdio-common/vfprintf.c: Remove unused ISASCII and MBRLEN.
(_itoa, _itoa_word) [COMPILE_WRPINTF]: Don't cast second argument.
(NOT_IN_JUMP_RANGE, CHAR_CLASS): Change (int) to (INT_T), use L_.
1999-06-19 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* libio/Makefile (shared-only-routines): Add oldiofgetpos,
oldiofgetpos64, oldiofsetpos and oldiofsetpos64.
(routines): Include oldiofgetpos, oldiofgetpos64, oldiofsetpos and
oldiofsetpos64 only if doing versioning.
1999-06-21 13:38:44 +00:00
Ulrich Drepper
d64b6ad075
Update.
...
* Versions.def: Add GLIBC_2.2 for libc.
* iconv/gconv.h: Make header suitable for inclusion in public header
by protecting all names with __.
* iconv/gconv.c: Adapt for symbol name changes.
* iconv/gconv.h: Likewise.
* iconv/gconv_builtin.c: Likewise.
* iconv/gconv_close.c: Likewise.
* iconv/gconv_db.c: Likewise.
* iconv/gconv_dl.c: Likewise.
* iconv/gconv_int.h: Likewise.
* iconv/gconv_open.c: Likewise.
* iconv/gconv_simple.c: Likewise.
* iconv/iconv.c: Likewise.
* iconv/iconv_close.c: Likewise.
* iconv/iconv_open.c: Likewise.
* iconv/loop.c: Likewise.
* iconv/skeleton.c: Likewise.
* iconvdata/8bit-gap.c: Likewise.
* iconvdata/8bit-generic.c: Likewise.
* iconvdata/ansi_x3.110.c: Likewise.
* iconvdata/big5.c: Likewise.
* iconvdata/cns11643.h: Likewise.
* iconvdata/cns11643l1.h: Likewise.
* iconvdata/euc-cn.c: Likewise.
* iconvdata/euc-jp.c: Likewise.
* iconvdata/euc-kr.c: Likewise.
* iconvdata/euc-tw.c: Likewise.
* iconvdata/gb2312.h: Likewise.
* iconvdata/iso-2022-jp.c: Likewise.
* iconvdata/iso-2022-kr.c: Likewise.
* iconvdata/iso646.c: Likewise.
* iconvdata/iso8859-1.c: Likewise.
* iconvdata/iso_6937-2.c: Likewise.
* iconvdata/iso_6937.c: Likewise.
* iconvdata/jis0201.h: Likewise.
* iconvdata/jis0208.h: Likewise.
* iconvdata/jis0212.h: Likewise.
* iconvdata/johab.c: Likewise.
* iconvdata/ksc5601.h: Likewise.
* iconvdata/sjis.c: Likewise.
* iconvdata/t.61.c: Likewise.
* iconvdata/uhc.c: Likewise.
* stdlib/mblen.c: Likewise.
* stdlib/mbtowc.c: Likewise.
* stdlib/wctomb.c: Likewise.
* wcsmbs/btowc.c: Likewise.
* wcsmbs/mbrtowc.c: Likewise.
* wcsmbs/mbsnrtowcs.c: Likewise.
* wcsmbs/mbsrtowcs.c: Likewise.
* wcsmbs/wchar.h: Likewise.
* wcsmbs/wcrtomb.c: Likewise.
* wcsmbs/wcsmbsload.c: Likewise.
* wcsmbs/wcsmbsload.h: Likewise.
* wcsmbs/wcsnrtombs.c: Likewise.
* wcsmbs/wcsrtombs.c: Likewise.
* wcsmbs/wctob.c: Likewise.
* include/limits.h (MB_LEN_MAX): Increase to 16.
* sysdeps/generic/_G_config.h: Define _G_fpos_t as struct. Define
_G_iconv_t.
* sysdeps/unix/sysv/linux/_G_config.h: Likewise.
* include/wchar.h: Change mbstate_t to __mbstate_t.
* libio/Makefile (routines): Add wfiledoalloc, oldiofgetpos,
oldiofgetpos64, oldiofsetpos, oldiofsetpos64, fputwc, fputwc_u,
getwc, getwc_u, getwchar, getwchar_u, iofgetws, iofgetws_u,
iofputws, iofputws_u, iogetwline, iowpadn, ioungetwc, putwc, putwc_u,
putchar, putchar_u, swprintf, vwprintf, wprintf, wscanf, fwscanf,
vwscanf, vswprintf, iovswscanf, swscanf, wgenops, wstrops, wfileops,
and iofwide.
(tests): Add tst_swprintf, tst_wprintf, tst_swscanf, and tst_wscanf.
* libio/Versions: Add _IO_fgetpos, _IO_fgetpos64, _IO_fsetpos,
_IO_fsetpos64, fgetpos, fgetpos64, fgetwc, fgetwc_unlocked, fgetws,
fgetws_unlocked, fputwc, fputwc_unlocked, fputws, fputws_unlocked,
fsetpos, fsetpos64, fwide, fwprintf, fwscanf, getwc, getwc_unlocked,
getwchar, getwchar_unlocked, putwc, putwc_unlocked, putwchar,
putwchar_unlocked, swprintf, swscanf, ungetwc, vfwprintf, vswprintf,
vwprintf, vfwscanf, vswscanf, vwscanf, wprintf, and wscanf to
GLIBC_2.2 for libc.
* libio/libio.h: Define codecvt struct. Define _IO_wide_data.
Extend _IO_file contain pointer to codecvt, widedata and mode.
(_IO_getwc_unlocked): New macro.
(_IO_putwc_unlocked): New macro.
(_IO_fwide): New macro.
* libio/libioP.h: Add new prototypes and adjust existing declarations.
* libio/fileops.c (_IO_new_file_close_it): Reset normal or widedata
buffers based on mode.
(new_do_write): Set _IO_write_end to _IO_buf_end if stream is wide
oriented.
(_IO_new_file_overflow): Don't depend only on _IO_CURRENTLY_PUTTING
flag to be enough to signal unallocated buffer. For wide oriented
stream don't make it linebuffered. Don't use _IO_do_flush, use
_IO_new_do_write directly.
(_IO_new_file_seekoff): Change return value type to _IO_off64_t.
(_IO_file_seek): Likewise.
* libio/genops.c (_IO_least_marker): Make global.
(__underflow): Orient stream if not already done.
(__uflow): Likewise.
(_IO_default_seekpos): Change to type _IO_off64_t.
(_IO_default_seekoff): Likewise.
(_IO_default_seek): Likewise.
(_IO_no_init): New function. Similar to _IO_init but allows to orient
in initialization.
* libio/iolibio.h: Add prototype for _IO_vswprintf. Change _IO_pos_BAD
to use _IO_off64_t.
* libio/ftello.c: Use _IO_off_t. For now abort when use with wide
char stream.
* libio/ftello64.c: Likewise.
* libio/ioftell.c: Likewise.
* libio/iofopncook.c: Likewise.
* libio/ioseekoff.c: Likewise.
* libio/ioseekpos.c: Likewise.
* libio/oldfileops.c: Likewise.
* libio/iofgetpos.c: Store state of conversion if necessary.
* libio/iofgetpos64.c: Likewise.
* libio/iofsetpos.c: Restore conversion state if necessary.
* libio/iofsetpos64.c: Likewise.
* libio/iofdopen.c: Initialize so that stream can be wide oriented.
* libio/iofopen.c: Likewise.
* libio/iofopen64.c: Likewise.
* libio/iopopen.c: Likewise.
* libio/iovdprintf.c: Likewise.
* libio/iovsprintf.c: Likewise.
* libio/iovsscanf.c: Likewise.
* libio/memstream.c: Likewise.
* libio/obprintf.c: Likewise.
* libio/iofputs.c: Orient stream if not already happened.
* libio/iofputs_u.c: Likewise.
* libio/iofwrite.c: Likewise.
* libio/iofwrite_u.c: Likewise.
* libio/ioputs.c: Likewise.
* libio/iosetbuffer.c: Handle not yet oriented stream.
* libio/iosetvbuf.c: Likewise.
* libio/oldstdfiles.c: Adjust FILEBUF_LITERAL call.
* libio/stdfiles.c: Likewise.
* libio/strops.c (_IO_str_overflow): Correctly free buffer after
failed allocation.
(_IO_str_seekoff): Use _IO_off64_t.
* libio/vasprintf.c: Pre-orient stream.
* libio/vsnprintf.c: Likewise.
* libio/fputwc.c: New file.
* libio/fputwc_u.c: New file.
* libio/fwprintf.c: New file.
* libio/fwscanf.c: New file.
* libio/getwc.c: New file.
* libio/getwc_u.c: New file.
* libio/getwchar.c: New file.
* libio/getwchar_u.c: New file.
* libio/iofgetws.c: New file.
* libio/iofgetws_u.c: New file.
* libio/iofputws.c: New file.
* libio/iofputws_u.c: New file.
* libio/iofwide.c: New file.
* libio/iogetwline.c: New file.
* libio/ioungetwc.c: New file.
* libio/iovswscanf.c: New file.
* libio/iowpadn.c: New file.
* libio/oldiofgetpos.c: New file.
* libio/oldiofgetpos64.c: New file.
* libio/oldiofsetpos.c: New file.
* libio/oldiofsetpos64.c: New file.
* libio/putwc.c: New file.
* libio/putwc_u.c: New file.
* libio/putwchar.c: New file.
* libio/putwchar_u.c: New file.
* libio/swprintf.c: New file.
* libio/swscanf.c: New file.
* libio/tst_swprintf.c: New file.
* libio/tst_swscanf.c: New file.
* libio/tst_wprintf.c: New file.
* libio/tst_wscanf.c: New file.
* libio/tst_wscanf.input: New file.
* libio/vswprintf.c: New file.
* libio/vwprintf.c: New file.
* libio/vwscanf.c: New file.
* libio/wfiledoalloc.c: New file.
* libio/wfileops.c: New file.
* libio/wgenops.c: New file.
* libio/wprintf.c: New file.
* libio/wscanf.c: New file.
* libio/wstrops.c: New file.
* stdio-common/Makefile (routines): Add _itowa, itowa-digits,
vfwprintf, and vfwscanf.
* stdio-common/_itoa.c (base_table): Rename to _IO_base_table and
make global.
* stdio-common/_itowa.c: New file.
* stdio-common/_itowa.h: New file.
* stdio-common/itoa-digits.c: Minimal optimization.
* stdio-common/itowa-digits.c: New file.
* stdio-common/printf-parse.h: Allow use in wide character context.
* stdio-common/printf-prs.c: Define ISASCII and MBRLEN.
* stdio-common/printf.h (printf_info): Add wide bit.
* stdio-common/printf_fp.c: Determine from wide bit whether stream
is wide oriented or not.
* stdio-common/printf_size.c: Likewise.
* sysdeps/generic/printf_fphex.c: Likewise.
* stdlib/strfmon.c: Call __printf_fp with wide bit cleared.
* stdio-common/vfprintf.c: Rewrite to allow use in wide character
context.
* stdio-common/vfscand.c: Likewise.
* stdio-common/vfwprintf.c: New file.
* stdio-common/vfwscanf.c: New file.
* time/Makefile (routines): Add wcsftime.
(tests): Add tst_wcsftime.
* time/Versions: Add wcsftime to GLIBC_2.2 for libc.
* time/strftime.c: Make usable as wcsftime.
* time/wcsftime.c: New file.
* time/tst_wcsftime.c: New file.
* wcsmbs/Makefile (routines): Add wmempcpy and wcschrnul.
* wcsmbs/Versions: Add wmempcpy and wcschrnul to GLIBC_2.2 for libc.
* wcsmbs/wcschrnul.c: New file.
* wcsmbs/wmemcpy.c: New file.
* wcsmbs/wmemcpy.c: Rename to __wmemcpy and make wmemcpy weak alias.
* wcsmbs/wmemmove.c: Likewise for wmemmove.
* manual/stdio.texi: Document is_char and wide element if printf_info.
* manual/time.texi: Document wcsftime.
* include/wchar.h: Add prototypes for __wmemcpy, __wmempcpy,
__wmemmove, __wcschrnul, and __vfwscanf.
* locale/langinfo.h: Add new LC_TIME entries for wchar_t data.
* locale/C-time.c: Adapt for above change.
* locale/categories.def: Likewise.
* locale/localeinfo.h: Likewise.
* localedata/Makefile: Don't run tests for now.
1999-06-16 22:55:47 +00:00
Ulrich Drepper
4000da88bc
(CPPFLAGS-.o): Don't define IO_DEBUG.
1999-04-11 11:06:49 +00:00