aboutsummaryrefslogtreecommitdiff
path: root/libio
AgeCommit message (Collapse)AuthorFilesLines
2007-07-122.5-18.1Jakub Jelinek62-528/+1739
2004-12-06Update.Ulrich Drepper1-2/+2
* libio/ioseekpos.c (_IO_seekpos_unlocked): Call _IO_SEEKOF not _IO_SEEKPOS, saving one indirect jump.
2004-12-06Update.Ulrich Drepper2-43/+9
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-06Test for ungetc bug.Ulrich Drepper1-0/+116
2004-11-27Update.Ulrich Drepper2-56/+48
2004-11-27 Ulrich Drepper <drepper@redhat.com> * include/dlfcn.h (__libc_dlopen): Add __RTLD_DLOPEN to the mode parameter. Reported by VY Newsum <newsum@fel.tno.nl>. 2004-11-10 Daniel Jacobowitz <dan@debian.org> * libio/iolibio.h (_IO_fclose, _IO_new_fclose, _IO_old_fclose, _IO_fflush, _IO_fgetpos, _IO_fgetpos64, _IO_fgets, _IO_fopen, _IO_old_fopen, _IO_new_fopen, _IO_fopen64, __fopen_internal, _IO_fprintf, _IO_fputs, _IO_fsetpos, _IO_fsetpos64, _IO_ftell, _IO_fread, _IO_fwrite, _IO_gets, _IO_printf, _IO_puts, _IO_scanf, _IO_fflush_internal, _IO_ftell_internal, _IO_fputs_internal) _IO_fwrite_internal): Remove incorrect __THROW. * libio/libioP.h (_IO_default_xsputn, _IO_wdefault_xsputn, _IO_default_xsgetn, _IO_wdefault_xsgetn, _IO_default_write, _IO_default_read, _IO_getline, _IO_getline_info, _IO_getwline, _IO_getwline_info, _IO_file_read_internal, _IO_sgetn_internal, _IO_wdo_write_internal, _IO_do_write_internal, _IO_getline_info_internal, _IO_getline_internal, _IO_vfprintf_internal, _IO_putc_internal, _IO_read, _IO_write, _IO_close): Likewise.
2004-11-18(_IO_FLAGS2_FORTIFY): Renamed from _IO_FLAGS2_CHECK_PERCENT_N.Ulrich Drepper1-1/+1
2004-11-09Update.Ulrich Drepper2-1/+95
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(_IO_new_file_seekoff): If mode is 0 and fp->_offset == _IO_pos_BAD, just ↵Ulrich Drepper1-1/+12
call _IO_SYSSEEK (fp, 0, dir) and if successful set fp->_offset.
2004-11-082004-11-03 Marcus Brinkmann <marcus@gnu.org>Roland McGrath1-1/+1
* sysdeps/gnu/_G_config.h (_G_HAVE_MREMAP): Define symbol. * sysdeps/mach/hurd/_G_config.h: New file. * libio/fileops.c (mmap_remap_check) [__linux__]: Replaced with [_G_HAVE_MREMAP].
2004-11-042004-11-04 Jakub Jelinek <jakub@redhat.com>Roland McGrath7-13/+18
* libio/ftello.c (ftello): Don't subtract save_end - save_base if pos is _IO_pos_BAD. * libio/ftello64.c (ftello64): Likewise. * libio/iofgetpos.c (_IO_new_fgetpos): Likewise. * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise. * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise. * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise. * libio/ioftell.c (_IO_ftell): Likewise. Cast to long int instead of off_t when checking for overflow.
2004-10-182004-10-15 Jakub Jelinek <jakub@redhat.com>Ulrich Drepper7-17/+101
* 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-09-26[BZ #346]Ulrich Drepper1-4/+4
Update. * libio/vasprintf.c (_IO_vasprintf): Fix condition to decide whether to realloc or not. Reported by Pavel Kankovsky <peak@argo.troja.mff.cuni.cz> [BZ #346].
2004-09-14Update.Ulrich Drepper12-397/+413
2004-09-13 Ulrich Drepper <drepper@redhat.com> * misc/sys/cdefs.h: Restore old definition of __P. * csu/munch.awk: Remove uses of __P and __PMT. * gmon/gmon.c: Likewise. * hesiod/hesiod.h: Likewise. * include/stdio.h: Likewise. * io/fts.c: Likewise. * libio/genops.c: Likewise. * libio/libioP.h: Likewise. * libio/fileops.c: Likewise. * libio/iolibio.h: Likewise. * libio/libio.h: Likewise. * libio/memstream.c: Likewise. * libio/oldfileops.c: Likewise. * libio/oldstdfiles.c: Likewise. * libio/iopopen.c: Likewise. * libio/vsnprintf.c: Likewise. * libio/vswprintf.c: Likewise. * libio/wgenops.c: Likewise. * libio/oldiopopen.c: Likewise. * locale/programs/xmalloc.c: Likewise. * locale/programs/xstrdup.c: Likewise. * malloc/mtrace.c: Likewise. * misc/getttyent.c: Likewise. * misc/getusershell.c: Likewise. * nis/rpcsvc/ypupd.h: Likewise. * posix/fnmatch.h: Likewise. * posix/glob.h: Likewise. * resolv/arpa/nameser.h: Likewise. * resolv/gethnamaddr.c: Likewise. * resolv/resolv.h: Likewise. * resolv/inet_net_ntop.c: Likewise. * resolv/inet_net_pton.c: Likewise. * resolv/res_init.c: Likewise. * resolv/nss_dns/dns-network.c: Likewise. * stdio-common/vfprintf.c: Likewise. * stdio-common/reg-printf.c: Likewise. * sysdeps/generic/chflags.c: Likewise. * sysdeps/generic/fchflags.c: Likewise. * sysdeps/generic/glob.c: Likewise. * sysdeps/generic/printf_fphex.c: Likewise. * sysdeps/generic/memcmp.c: Likewise. * sysdeps/generic/memcopy.h: Likewise. * sysdeps/generic/morecore.c: Likewise. * sysdeps/generic/sstk.c: Likewise. * sysdeps/posix/sigvec.c: Likewise. * sysdeps/posix/ttyname_r.c: Likewise. * sysdeps/standalone/arm/bits/errno.h: Likewise. * sysdeps/standalone/standalone.h: Likewise. * sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise. * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise. * sysdeps/unix/arm/start.c: Likewise. * sysdeps/unix/bsd/sigaction.c: Likewise. * sysdeps/unix/bsd/sun/m68k/sigtramp.c: Likewise. * sysdeps/unix/bsd/sun/sparc/sigtramp.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise. * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise. * sysdeps/unix/bsd/ultrix4/sysconf.c: Likewise. * sysdeps/unix/sparc/start.c: Likewise. * sysdeps/unix/sysv/getdents.c: Likewise. * sysdeps/unix/sysv/irix4/fpathconf.c: Likewise. * sysdeps/unix/sysv/irix4/getgroups.c: Likewise. * sysdeps/unix/sysv/irix4/getpriority.c: Likewise. * sysdeps/unix/sysv/irix4/getrusage.c: Likewise. * sysdeps/unix/sysv/irix4/pathconf.c: Likewise. * sysdeps/unix/sysv/irix4/setgroups.c: Likewise. * sysdeps/unix/sysv/irix4/sigtramp.c: Likewise. * sysdeps/unix/sysv/irix4/start.c: Likewise. * sysdeps/unix/sysv/irix4/sysconf.c: Likewise. * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise. * sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise. * sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/sethostname.c: Likewise. * sysdeps/unix/sysv/sysv4/setsid.c: Likewise. * sysdeps/unix/sysv/sysv4/sysconf.c: Likewise. * sysdeps/unix/sysv/sysv4/waitpid.c: Likewise. * sysdeps/unix/sysv/sysv4/solaris2/getdents.c: Likewise. * time/tzset.c: Likewise. * time/strftime_l.c: Likewise. * time/strptime_l.c: Likewise. * crypt/md5.h: Likewise.
2004-09-07Update.Ulrich Drepper1-2/+2
* include/atomic.h: Define atomic_increment_val, atomic_decrement_val, and atomic_dealy is not already defined. * sysdeps/i386/i486/bits/atomic.h: Define atomic_delay. * sysdeps/x86_64/bits/atomic.h: Likewise. * miscd/sys/cdefs.h (__NTH): New macro. (__THROW): Define using nothrow attribute for C code and gcc >= 3.2. (__REDIRECT_NTH): New macro. * argp/argp.h: Use __NTH and __REDIRECT_NTH where necessary. * ctype/ctype.h: Likewise. * dirent/dirent.h: Likewise. * io/fcntl.h: Likewise. * io/sys/sendfile.h: Likewise. * io/sys/stat.h: Likewise. * io/sys/statfs.h: Likewise. * io/sys/statvfs.h: Likewise. * libio/bits/stdio.h: Likewise. * misc/sys/mman.h: Likewise. * posix/unistd.h: Likewise. * resource/sys/resource.h: Likewise. * rt/aio.h: Likewise. * signal/signal.h: Likewise. * stdlib/stdlib.h: Likewise. * string/argz.h: Likewise. * string/string.h: Likewise. * sysdeps/generic/inttypes.h: Likewise. * sysdeps/i386/fpu/bits/mathinline.h: Likewise. * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise. * sysdeps/s390/fpu/bits/mathinline.h: Likewise. * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise. * sysdeps/unix/sysv/linux/bits/socket.h: Likewise. * sysdeps/unix/sysv/linux/bits/sys/sysmacros.h: Likewise. * wcsmbs/wchar.h: Likewise. * sysdeps/generic/glob.c: Use __PMT isntead of __P where appropriate. * resolv/gethnamaddr.c (getanswer): Remove __P use in variable definition. * io/sys/poll.h: Remove __THROW from poll prototype, it's a cancellation point.
2004-08-10[BZ #316]Roland McGrath1-3/+4
2004-08-10 Jakub Jelinek <jakub@redhat.com> * libio/bits/stdio.h (fread_unlocked): Cast 0 to (size_t). (fwrite_unlocked): When checking if size * n is <= 8, cast each argument to size_t individually. Cast n to (void) instead of (size_t), surround with (), return (size_t) 0 if one of n or size is 0. [BZ #316] * stdio-common/Makefile (tests): Add tst-unlockedio. * stdio-common/tst-unlockedio.c: New test.
2004-08-10[BZ #309]Ulrich Drepper1-12/+18
Update. * libio/bits/stdio.h (fread_unlocked): Add a couple of (size_t) casts to handle funny calls with floating point argument values and signed values correctly and without warning. (fwrite_unlocked): Likewise. [BZ #309]
2004-07-23[BZ #282]Ulrich Drepper1-26/+1
Update. 2004-07-23 Jakub Jelinek <jakub@redhat.com> [BZ #282] * libio/iopopen.c (_IO_new_popen): Use _IO_init instead of _IO_no_init. Remove wd from struct locked_FILE. (_IO_wproc_jumps): Remove. Reported by Andrew Josey <a.josey@opengroup.org>. * stdio-common/Makefile (tests): Add tst-popen. * stdio-common/tst-popen.c: New test.
2004-07-23Update.Ulrich Drepper1-2/+2
2004-07-23 Ulrich Drepper <drepper@redhat.com> * posix/bits/posix1_lim.h: Fix values for _POSIX_CHILD_MAX and _POSIX_OPEN_MAX. Add _POSIX_HOST_NAME_MAX, _POSIX_SYMLINK_MAX, _POSIX_SYMLOOP_MAX, and _POSIX_RE_DUP_MAX. Reported by Andrew Josey. * include/features.h: Document _POSIX_C_SOURCE == 200112L. * grp/grp.h: Define gid_t if __USE_XOPEN2K is defined. * pwd/pwd.h: Define uid_t and gid_t if __USE_XOPEN2K is defined. * io/sys/stat.h: Define dev_t, gid_t, ino_t, mode_t, nlink_t, off_t, time_t, and uid_t if __USE_XOPEN2K is defined. * signal/signal.h: Define pid_t if __USE_XOPEN2K is defined. * posix/unistd.h: Define gid_t, off_t, pid_t, uid_t, and useconds_t if __USE_XOPEN2K is defined. * io/utime.h: Define time_t if __USE_XOPEN2K is defined. * libio/stdio.h: Declare fseeko and ftello if __USE_XOPEN2K is defined.
2004-05-13Update.Ulrich Drepper1-12/+8
2004-05-13 Jakub Jelinek <jakub@redhat.com> * libio/genops.c (_IO_default_xsputn): Avoid one overflow per char if count is negative, yet write_ptr < write_end. (_IO_default_xsgetn): Avoid one underflow per char if count is negative, yet read_ptr < read_end.
2004-04-01(new_do_write): Return _IO_size_t to make 64-bit clean.Andreas Jaeger1-2/+2
2004-03-10Update.Ulrich Drepper12-11/+40
2004-03-10 Ulrich Drepper <drepper@redhat.com> * include/libc-symbols.h: Define attribute_compat_text_section and attribute_compat_data_section. * io/ftw.c: Mark compat code with attribute_compat_text_section. * libio/iofopncook.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/oldpclose.c: Likewise. * libio/oldtmpfile.c: Likewise. * nptl/forward.c: Likewise. * nss/getXXbyYY_r.c: Likewise. * nss/getXXent_r.c: Likewise. * posix/tst-vfork1.c: Likewise. * stdlib/canonicalize.c: Likewise. * stdlib/old_atexit.c: Likewise. * sysdeps/generic/glob.c: Likewise. * sysdeps/posix/posix_fallocate64.c: Likewise. * sysdeps/unix/sysv/linux/i386/alphasort64.c: Likewise. * sysdeps/unix/sysv/linux/i386/chown.c: Likewise. * sysdeps/unix/sysv/linux/i386/glob64.c: Likewise. * sysdeps/unix/sysv/linux/i386/msgctl.c: Likewise. * sysdeps/unix/sysv/linux/i386/oldgetrlimit64.c: Likewise. * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Likewise. * sysdeps/unix/sysv/linux/i386/readdir64.c: Likewise. * sysdeps/unix/sysv/linux/i386/readdir64_r.c: Likewise. * sysdeps/unix/sysv/linux/i386/scandir64.c: Likewise. * sysdeps/unix/sysv/linux/i386/semctl.c: Likewise. * sysdeps/unix/sysv/linux/i386/shmctl.c: Likewise. * sysdeps/unix/sysv/linux/i386/versionsort64.c: Likewise. * sysdeps/unix/sysv/linux/i386/syscalls.list: vm86@@GLIBC_2.3.4 should be the default symbol. Having none misses the point.
2004-03-09Update.Ulrich Drepper1-1/+3
* iconv/gconv_db.c: Don't define lock as static. Rename to __gconv_lock and export from the file. * iconv/gconv_int.h: Declare __gconv_lock. * libio/iofclose.c [_LIBC] (_IO_new_fclose): Lock gconv lock before __gconv_release_step calls. Patch by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>. * iconv/gconv_simple.c (internal_ucs4_loop): Fix typo in last change. * iconv/gconv_db.c
2004-03-05Update.Ulrich Drepper1-1/+1
* include/wctype.h: Add libc_hidden_proto for __towctrans. * wctype/towctrans.c: Add libc_hidden_def. * libio/memstream.c (open_memstream): Use _IO_init with INTUSE. * posix/regexec.c (transit_state): Remove unused variable next_state. * posix/regcomp.c (init_dfa): Use __btowc instead of btowc.
2004-02-19Update.Ulrich Drepper2-4/+4
* libio/iopopen.c (_IO_new_proc_open): It's not kosher to use cfork instead of fork. * libio/oldiopopen.c (_IO_old_proc_open): Likewise.
2004-02-09(_IO_cleanup): Do not use locking when flushing the buffers. Some thread ↵Ulrich Drepper1-1/+3
might be using a stream.
2004-01-14Update.Ulrich Drepper15-50/+50
2004-01-14 Ulrich Drepper <drepper@redhat.com> * libio/libio.h: Add const to function tables types. * libio/libioP.h: Likewise. * /login/utmp-private.h: Likewise. * libio/fileops.c: Add const to jump table variable definition. * libio/genops.c: Likewise. * libio/iofopncook.c: Likewise. * libio/iopopen.c: Likewise. * libio/memstream.c: Likewise. * libio/obprintf.c: Likewise. * libio/oldfileops.c: Likewise. * libio/oldiopopen.c: Likewise. * libio/strops.c: Likewise. * libio/vsnprintf.c: Likewise. * libio/vswprintf.c: Likewise. * libio/wfileops.c: Likewise. * libio/wstrops.c: Likewise. * login/getutent_r.c: Likewise. * login/getutid_r.c Likewise. * login/getutline_r.c: Likewise. * sysdeps/generic/utmp_file.c: Likewise.
2003-12-28Use __builtin_expect in _IO_getc_unlocked, _IO_peekc_unlocked, ↵Ulrich Drepper1-6/+14
_IO_ptc_unlcoked, _IO_getwc_unlocked, and _IO_putwc_unlocked.
2003-11-04Update.Ulrich Drepper4-23/+34
2003-10-27 Daniel Jacobowitz <drow@mvista.com> * libio/libioP.h [_IO_USE_OLD_IO_FILE] (struct _IO_FILE_complete_plus): New type. * libio/oldiofopen.c (_IO_old_fopen): Use _IO_FILE_complete_plus. * libio/oldiofdopen.c (_IO_old_fdopen): Likewise. * libio/oldiopopen.c (struct _IO_proc_file, _IO_old_popen): Likewise. Call _IO_old_init instead of _IO_init.
2003-11-01* libio/bug-ftell.c (do_test): Add a cast.Roland McGrath1-1/+2
2003-09-18Update.Ulrich Drepper1-1/+1
2003-09-18 Jakub Jelinek <jakub@redhat.com> * libio/memstream.c (open_memstream): Use _IO_init instead of _IO_old_init.
2003-09-17Update.Ulrich Drepper1-78/+0
2003-09-17 Philip Blundell <philb@gnu.org> * sysdeps/unix/sysv/linux/arm/vfork.S: Branch to fork if libpthread is loaded. Elide backwards compatibility code when not required.
2003-09-15Update.Ulrich Drepper1-1/+1
* libio/memstream.c (open_memstream): Don't allow wide char operations.
2003-09-12Update.Ulrich Drepper1-1/+1
2003-09-12 Ulrich Drepper <drepper@redhat.com> * grp/Makefile (CFLAGS-getgrgid_r.c, CFLAGS-getgrnam_r.c, CFLAGS-fgetgrent.c, CFLAGS-fgetgrent_r.c, CFLAGS-putgrent.c, CFLAGS-initgroups.c, CFLAGS-getgrgid.c): Add -fexceptions. * inet/Makefile (CFLAGS-either_ntoh.c, CFLAGS-either_hton.c, CFLAGS-getnetgrent.c, CFLAGS-getnetgrent_r.c): Likewise. * io/Makefile (CFLAGS-posix_fallocate.c, CFLAGS-posix_fallocate64.c): Likewise. * misc/Makefile (CFLAGS-err.c): Likewise. * posix/Makefile (CFLAGS-getaddrinfo.c, CFLAGS-spawn.c, CFLAGS-spawnp.c, CFLAGS-spawni.c, CFLAGS-pause.c, CFLAGS-glob.c, CFLAGS-glob64.c): Likewise. * pwd/Makefile (CFLAGS-getpw.c): Likewise. * shadow/Makefile (CFLAGS-fgetspent.c, CFLAGS-fgetspent_r.c, CFLAGS-putspent.c, CFLAGS-getspnam.c, CFLAGS-getspnam_r.c): Likewise. * stdio-common/Makefile (CFLAGS-cuserid.c): Likewise. * sunrpc/Makefile (CFLAGS-openchild.c): Likewise. * stdlib/Makefile (CFLAGS-mkstemp.c): Remove definition. * libio/stdio.h: Remove __THROW from cuserid prototype. * locale/loadarchive.c: Use only non-cancelable interfaces. * resolv/herror.c (herror): Likewise. * malloc/hooks.c: Before using IO stream mark stream so it uses only non-cancelable interfaces. * malloc/malloc.c: Likewise. * posix/getopt.c: Likewise. 2003-09-11 Jakub Jelinek <jakub@redhat.com> * Makerules (LDFLAGS-c.so): Remove -u __register_frame. 2003-09-12 Ulrich Drepper <drepper@redhat.com> * stdio-common/stdio_ext.h: Mark most functions with __THROW. * misc/err.h: Remove __THROW from all prototypes. * posix/getopt.h (__THROW): Define if not already defined. Add __THROW to the getopt functions. 2003-09-11 Ulrich Drepper <drepper@redhat.com> * io/Makefile (CFLAGS-lockf.c): Add -fexceptions. (CFLAGS-fts.c): Likewise. * io/fcntl.h: Remove __THROW from lockf prototypes. * io/fts.h: Remove most __THROW.
2003-09-11Update.Ulrich Drepper1-1/+1
2003-09-11 H.J. Lu <hongjiu.lu@intel.com> * elf/tls-macros.h (TLS_IE): Add a stop bit for ia64. (TLS_LD): Likewise. (TLS_GD): Likewise. 2003-09-11 Jakub Jelinek <jakub@redhat.com> * libio/fileops.c (_IO_new_file_overflow): Add INTUSE to _IO_free_backup_area call.
2003-09-08Update.Ulrich Drepper1-1/+2
2003-09-08 Ulrich Drepper <drepper@redhat.com> * libio/bug-ftell.c: Include <sys/types.h>. (main): Mark cp as const.
2003-09-06Update.Ulrich Drepper5-10/+165
* 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(_IO_new_file_overflow): Handle switching to write mode from read of backup ↵Ulrich Drepper1-6/+17
buffer.
2003-09-04Update.Ulrich Drepper1-5/+6
2003-09-04 Jakub Jelinek <jakub@redhat.com> * libio/fileops.c (_IO_file_read, _IO_new_file_write): Add __builtin_expect. (_IO_file_open): Likewise. Use close_not_cancel.
2003-09-04Update.Ulrich Drepper2-7/+16
2003-09-04 Ulrich Drepper <drepper@redhat.com> * libio/libio.h: Define _IO_FLAGS2_NOTCANCEL. * libio/fileops.c [_LIBC]: Remove close macro. (_IO_file_open): If _IO_FLAGS2_NOTCANCEL is set, use open_not_cancel. (_IO_new_file_open): Recognize 'c' flag in mode string. (_IO_file_read): If _IO_FLAGS2_NOTCANCEL is set use read_not_cancel. (_IO_new_file_write): If _IO_FLAGS2_NOTCANCEL is set use write_not_cancel. * iconv/gconv_conf.c: Use fopen with 'c' mode flag. * inet/rcmd.c: Likewise. * inet/ruserpass.c: Likewise. * intl/localealias.c: Likewise. * malloc/mtrace.c: Likewise. * misc/getpass.c: Likewise. * misc/getttyent.c: Likewise. * misc/mntent_r.c: Likewise. * misc/getusershell.c: Likewise. * nss/nsswitch.c: Likewise. * resolv/res_hconf.c: Likewise. * resolv/res_init.c: Likewise. * sysdeps/unix/sysv/linux/getsysstats.c: Likewise. * time/getdate.c: Likewise. * time/tzfile.c: Likewise. * misc/fstab.h: Undo last change. * misc/mntent.h: Likewise. * misc/Makefile: Remove CFLAGS-mntent_r.c, CFLAGS-mntent.c, and CFLAGS-fstab.c definition. 2003-09-04 Jakub Jelinek <jakub@redhat.com> 2003-09-03 Ulrich Drepper <drepper@redhat.com>
2003-09-02(CFLAGS-oldtmpfile.c): Add -fexceptions.Ulrich Drepper2-3/+7
2003-08-31Update.Ulrich Drepper2-8/+9
* libio/libioP.h (_IO_acquire_lock_fct): Define as inline function.
2003-08-31Update.Ulrich Drepper1-0/+8
2003-08-31 Ulrich Drepper <drepper@redhat.com> * libio/libio.h (_IO_acquire_lock_fct): Define as inline function. Code by Richard Henderson.
2003-08-30Update.Ulrich Drepper2-18/+31
2003-08-28 Carlos O'Donell <carlos@baldric.uwo.ca> * sysdeps/unix/sysv/linux/hppa/syscalls.list: Add semtimedop. 2003-08-29 Jakub Jelinek <jakub@redhat.com> * libio/iofgetpos64.c (_IO_new_fgetpos64): Move lock release to the end. 2003-08-29 Ulrich Drepper <drepper@redhat.com> * libio/stdio.h: Remove a few more __THROW. * libio/iofputs.c (_IO_fputs): Likewise. * libio/iofputws.c (fputws): Likewise.
2003-08-29Update.Ulrich Drepper50-249/+205
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-26Update.Ulrich Drepper1-5/+6
2003-08-26 Jakub Jelinek <jakub@redhat.com> * elf/ldconfig.c (search_dir): When checking for GNU-style .so link file use the real file name, not the resolved name we got by following the symlinks.
2003-08-25Update.Ulrich Drepper1-1/+10
2003-08-25 Ulrich Drepper <drepper@redhat.com> * libio/oldfileops.c (_IO_old_file_init): Initialize _mode field if the object size is large enough.
2003-08-25Update.Ulrich Drepper2-10/+8
2003-08-25 Ulrich Drepper <drepper@redhat.com> * libio/libio.h (_IO_fwide): In the mode==0 optimization, don't use _mode if _IO_fwide_maybe_incompatible. * libio/iofwide.c (_IO_fwide): Move the test for mode == 0 after the compatibility test.
2003-08-25Update.Ulrich Drepper1-6/+1
2003-08-25 Jakub Jelinek <jakub@redhat.com> * elf/cache.c (save_cache): Don't write beyond end of file_entries buffer. Duplicate last old cache entry if the count would be odd.
2003-08-25(_IO_seekoff_unlocked): Add glibc 2.0 compatibility in wide stream test.Ulrich Drepper1-1/+6
2003-08-12Update.Ulrich Drepper11-19/+26
2003-08-12 Jakub Jelinek <jakub@redhat.com> * libio/libioP.h (_IO_vtable_offset): Define. * libio/freopen.c (freopen): Use it. * libio/ioputs.c (_IO_puts): Likewise. * libio/freopen64.c (freopen64): Likewise. * libio/genops.c (__underflow, __uflow, _IO_flush_all_lockp): Likewise. * libio/iofclose.c (_IO_new_fclose): Likewise. * libio/iofputs.c (_IO_fputs): Likewise. * libio/ioftell.c (_IO_ftell): Likewise. * libio/iofwrite.c (_IO_fwrite): Likewise. * libio/ioseekoff.c (_IO_seekoff_unlocked): Likewise. * libio/iosetbuffer.c (_IO_setbuffer): Likewise. * stdio-common/vfprintf.c (ORIENT, vfprintf): Likewise. * stdio-common/vfscanf.c (ORIENT): Likewise.