aboutsummaryrefslogtreecommitdiff
path: root/libio/fileops.c
AgeCommit message (Collapse)Author
2003-04-16* libio/fileops.c (_IO_file_close_it): Macro tweak to avoid warning.Roland McGrath
* sysdeps/generic/libc-start.c [NEED_DL_SYSINFO]: Add decl for INTUSE(__register_frame_info_bases).
2003-04-05(_IO_new_file_fopen): Don't free step data right after getting them.Ulrich Drepper
2003-03-27* scripts/abilist.awk: If variable `parse_names' is set, grok the fileRoland McGrath
header lines and write out foo.symlist files for each foo.so.NN listed. * libio/libioP.h (_IO_wfile_jumps): Remove attribute_hidden. This symbol is exported, and we don't want to hide it. Add libc_hidden_proto instead. (_IO_file_jumps): Add libc_hidden_proto. * libio/wfileops.c (_IO_wfile_jumps): Add libc_hidden_data_def. Remove INTVARDEF. * libio/fileops.c (_IO_file_jumps): Likewise. * libio/stdfiles.c: Don't use INTUSE on them. * libio/iofdopen.c (_IO_new_fdopen): Likewise. * libio/iofopen.c (__fopen_internal): Likewise. * libio/freopen.c (freopen): Likewise. * libio/freopen64.c (freopen64): Likewise. * libio/iovdprintf.c (_IO_vdprintf): Likewise.
2003-03-03Update.Ulrich Drepper
* libio/fileops.c (_IO_new_file_fopen): Close stillborn descriptor if ccs parameter isn't valid. Reported by Andreas Schwab. 2003-03-03 Martin Schwidefsky <schwidefsky@de.ibm.com> * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Add support for system call numbers > 255. * sysdeps/unix/sysv/linux/s390/s390-32/syscall.h (DO_CALL, INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0, INTERNAL_SYSCALL): Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/syscall.h (DO_CALL, INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0, INTERNAL_SYSCALL): Likewise. 2003-03-03 Martin Schwidefsky <schwidefsky@de.ibm.com> * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Don't free the dtv array if it is the initial dtv. 2003-03-03 Ulrich Drepper <drepper@redhat.com> * po/es.po: Update from translation team. * po/fr.po: Likewise. * po/sk.po: Likewise. * po/sv.po: Likewise.
2003-01-08Update.Ulrich Drepper
Unify symbols in user namespace exported by libc.so and libc.a. * argp/argp-fmtstream.c: Don't define argp_make_fmtstream, argp_fmtstream_free, and argp_fmtstream_printf. * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc, argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin, argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and argp_fmtstream_point. * gmon/gmon.c: Don't define write_profiling. * libio/genops.c: Don't define _cleanup. * intl/explodename.c (_nl_find_language.c): Mark as static. * intl/loadinfo.h: Remove _nl_find_language prototype. * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static. * libio/libioP.h: Remove declaration. * libio/iopopen.c (_IO_proc_jumps): Mark as static. * libio/libioP.h: Remove declaration. * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC. * sysdeps/generic/framestate.c: Define STATIC before including unwind-dw2.c.
2002-12-31Update.Ulrich Drepper
2002-12-31 Ulrich Drepper <drepper@redhat.com> * string/string-inlines.c: Define __memcpy_g and __strchr_g macros to avoid using the exported symbols. Define aliases with the original names separately. * include/time.h: Add libc_hidden_proto for __strftime_l. * include/wchar.h: Add libc_hidden_proto for __wcsftime_l. * time/strftime.c: Always use libc_hidden_def if _LIBC. * libio/libioP.h: Add libc_hidden_proto for _IO_file_open. * libio/fileops.c: Add libc_hidden_def for _IO_file_open. * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for tr_break. * csu/Makefile (routines): Add dso_handle. * csu/dso_handle.c: New file.
2002-11-11* crypt/md5-crypt.c: Doc fix.Roland McGrath
2002-08-30(_IO_new_file_fopen): Recognize new mode specifier 'm' to enable mmap I/O.Ulrich Drepper
2002-08-28Add i386/dl-brk.S, mips/dl-brk.S, and sparc/dl-brk.S.Ulrich Drepper
2002-08-25Update.Ulrich Drepper
2002-08-24 Ulrich Drepper <drepper@redhat.com> * locale/programs/charmap.c (charmap_new_char): Don't use ULONG_MAX as maximum UCS4 value. * sysdeps/unix/sysv/linux/ia64/sys/user.h: New file. * sysdeps/generic/strtol.c: We don't need the isascii test in glibc. * malloc/hooks.c (public_sET_STATe): use size_t as type for i. * malloc/malloc.c (mALLINFo): Likewise. * libio/wstrops.c (_IO_wstr_pbackfail): Use WEOF in comparison. * libio/wfileops.c (_IO_wfile_overflow): Use EOF not WEOF when examining result of _IO_do_flush call. * stdio-common/vfprintf.c (vfprintf): Use correct type in va_arg. Use prec not spec when sizing buffers. * catgets/open_catalog.c (__open_catalog): Add casts to avoid warnings. * locale/loadarchive.c (_nl_load_locale_from_archive): Likewise. * locale/loadlocale.c (_nl_intern_locale_data): Likewise. * stdio-common/vfscanf.c (inchar): Likewise. * misc/efgcvt_r.c (fcvt_r): Likewise. * elf/dl-misc.c (_dl_debug_vdprintf): Likewise. * elf/readlib.c (process_file): Likewise. * elf/sprof.c (load_profdata): Likewise. * sysdeps/ia64/hp-timing.h (HP_TIMING_PRINT): Likewise. * locale/programs/linereader.c (get_toplvl_escape): Likewise. * locale/programs/charmap.c (charmap_read): Likewise. * libio/fileops.c: Likewise. * libio/fmemopen.c: Likewise. * stdlib/strtod.c: Likewise. * elf/dl-load.c: Likewise. * iconv/iconvconfig.c: Likewise. * iconv/iconv_prog.c (process_block): Likewise. * sysdeps/unix/sysv/linux/ia64/Makefile: Define _ASM_IA64_CURRENT_H macro to calm down the compiler. * iconv/gconv_cache.c (__gconv_load_cache): Add cast to avoid warning. * sysdeps/ia64/elf/initfini.c: Don't use newlines embedded in string. * sysdeps/unix/sysv/linux/i386/sysdep.S: Update comment regarding placement of errno definition. * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise. * sysdeps/unix/sysv/linux/mips/sysdep.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise. * resolv/nss_dns/dns-host.c (MAXPACKET): Increase minimum value from 1024 to 65536, to avoid buffer overrun. 2002-08-16 Paul Eggert <eggert@twinsun.com> * resolv/gethnamaddr.c (MAXPACKET): Increase minimum value from 1024 to 65536, to avoid buffer overrun. * resolv/res_query.c (MAXPACKET): Likewise. architectures.
2002-08-232002-08-23 Roland McGrath <roland@redhat.com>Roland McGrath
* malloc/hooks.c: Move variable definitions ahead of uses. * libio/fileops.c: Move versioned_symbol defns ahead of _IO_jump_t initializers that make reference to variables they define.
2002-08-15* libio/fileops.c (_IO_file_seekoff_mmap): Leave read pointers at EOFRoland McGrath
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-04Update.Ulrich Drepper
2002-08-04 Ulrich Drepper <drepper@redhat.com> * stdio-common/psignal.c: Declare _sys_siglist_internal. Use USEINT to access _sys_siglist. * string/strsignal.c: Likewise. * sysdeps/generic/siglist.c: Add _sys_siglist_internal alias. * sysdeps/gnu/siglist.c: Likewise. * sysdeps/unix/siglist.c: Likewise. * sysdeps/unix/sysv/linux/arm/siglist.c: Likewise. * libio/fileops.c: Add missing INTUSEs for _IO_file_jumps. * libio/wfileops.c: Add missing INTUSE for _IO_file_close. * intl/dcigettext.c: Define _nl_default_dirname_internal as hidden alias and use it. * intl/bindtextdom.c: Use _nl_default_dirname_internal. * include/netinet/in.h: Add declaration of in6addr_loopback_internal. * inet/in6_addr.c: Add INTVARDEF for in6addr_loopback. * sysdeps/posix/getaddrinfo.c: Use INTUSE for in6addr_loopback access. * include/time.h: Add libc_hidden_proto for __gmtime_r. * time/gmtime.c (__gmtime_r): Add libc_hidden_def. * iconv/Versions: Replace __gconv_alias_db, __gconv_modules_db, and __gconv_cache with __gconv_get_alias_db, __gconv_get_modules_db, and __gconv_get_cache respectively. * iconv/gconv_cache.c (gconv_cache): Renamed for __gconv_cache and defined static. Change all users. (__gconv_get_cache): New function. * iconv/gconv_db.c (__gconv_get_modules_db): New function. (__gconv_get_alias_db): New function. * iconv/gconv_int.h (__gconv_alias_db): Declare as hidden. (__conv_modules_db): Likewise. Add prototypes for __gconv_get_cache, __gconv_get_modules_db, and __gconv_get_alias_db. * iconv/iconv_prog.c: Use the new functions instead of accessing the variables. * include/stdlib.h: Add prototype and libc_hidden_proto for __default_morecore. * sysdeps/generic/morecore.c: Include <stdlib.h>. * malloc/obstack.c: Remove fputs macro. * malloc/mtrace.c: Remove fopen macro.
2002-08-02* libio/fileops.c (_IO_file_sync_mmap): New function.Roland McGrath
(_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-07-25Update.Ulrich Drepper
2002-07-24 Ulrich Drepper <drepper@redhat.com> * libio/fileops.c (_IO_file_seekoff_mmap): Do use fp->_offset to compute current position. * stdio-common/tst-fseek.c (main): Improve error messages. * libio/tst-freopen.c (main): Remove unused variable. * libio/fileops.c (_IO_file_seekoff_mmap): Set fp->_offset after succesful seek call. Simply error checking. 2002-07-25 Jakub Jelinek <jakub@redhat.com> * config.h.in: Use __ASSEMBLER__ test macro not ASSEMBLER. * sysdeps/ia64/fpu/libm_support.h: Likewise.
2002-07-25(_IO_file_seekoff_mmap): Set fp->_offset after succesful seek call. Simply ↵Ulrich Drepper
error checking.
2002-07-24* libio/fileops.c (_IO_file_seekoff_mmap): Don't rely on FP->_offset,Roland McGrath
which gets moved around. Calculate size of mmap'd buffer instead.
2002-07-24Update.Ulrich Drepper
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* libio/fileops.c (_IO_file_seekoff_mmap): When just examining theRoland McGrath
position, calculate it to take into account an active pushback buffer. * libio/Makefile (tests): Add bug-ungetc. * libio/bug-ungetc.c: New file.
2002-06-25Update.Ulrich Drepper
* 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-22Update.Ulrich Drepper
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-04-03Update.Ulrich Drepper
* 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-03Update.Ulrich Drepper
2002-04-02 Ulrich Drepper <drepper@redhat.com> * libio/iofclose.c (_IO_new_fclose): Move freeing of backup buffer to ... * libio/fileops.c (_IO_new_file_close_it): ...here [PR libc/3190].
2002-03-16Update.Ulrich Drepper
2002-03-15 Ulrich Drepper <drepper@redhat.com> * libio/iofdopen.c (_IO_new_fdopen): Call _IO_setb to deallocate buffers if _IO_file_attach failed. * libio/fileops.c (_IO_file_open): Close file descriptor if _IO_SEEKOFF call failed. * iconv/gconv_conf.c: Add internal_function to __gconv_get_path
2002-03-13Update.Ulrich Drepper
* ctype/ctype-info.c: Declare _nl_C_LC_CTYPE_class, _nl_C_LC_CTYPE_class32, _nl_C_LC_CTYPE_toupper, _nl_C_LC_CTYPE_tolower, _nl_C_LC_CTYPE_class_upper, _nl_C_LC_CTYPE_class_lower, _nl_C_LC_CTYPE_class_alpha, _nl_C_LC_CTYPE_class_digit, _nl_C_LC_CTYPE_class_xdigit, _nl_C_LC_CTYPE_class_space, _nl_C_LC_CTYPE_class_print, _nl_C_LC_CTYPE_class_graph, _nl_C_LC_CTYPE_class_blank, _nl_C_LC_CTYPE_class_cntrl, _nl_C_LC_CTYPE_class_punct, _nl_C_LC_CTYPE_class_alnum, _nl_C_LC_CTYPE_map_toupper, _nl_C_LC_CTYPE_map_tolower, and _nl_C_LC_CTYPE_width: Declare as hidden. * include/locale.h: Declare _nl_locale_file_list. * locale/C-address.c: Define _nl_C_LC_ADDRESS as hidden. * locale/C-collate.c: Define _nl_C_LC_COLLATE as hidden. * locale/C-identification.c: Define _nl_C_LC_IDENTIFICATION as hidden. * locale/C-measurement.c: Define _nl_C_LC_MEASUREMENT as hidden. * locale/C-messages.c: Define _nl_C_LC_MESSAGES as hidden. * locale/C-monetary.c: Define _nl_C_LC_MONETARY as hidden. * locale/C-name.c: Define _nl_C_LC_NAME as hidden. * locale/C-numeric.c: Define _nl_C_LC_NUMERIC as hidden. * locale/C-paper.c: Define _nl_C_LC_PAPER as hidden. * locale/C-telephone.c: Define _nl_C_LC_TELEPHONE as hidden. * locale/C-time.c: Define _nl_C_LC_TIME as hidden. * locale/C-ctype.c: Define _nl_C_LC_CTYPE_class, _nl_C_LC_CTYPE_class32, _nl_C_LC_CTYPE_toupper, _nl_C_LC_CTYPE_tolower, _nl_C_LC_CTYPE_class_upper, _nl_C_LC_CTYPE_class_lower, _nl_C_LC_CTYPE_class_alpha, _nl_C_LC_CTYPE_class_digit, _nl_C_LC_CTYPE_class_xdigit, _nl_C_LC_CTYPE_class_space, _nl_C_LC_CTYPE_class_print, _nl_C_LC_CTYPE_class_graph, _nl_C_LC_CTYPE_class_blank, _nl_C_LC_CTYPE_class_cntrl, _nl_C_LC_CTYPE_class_punct, _nl_C_LC_CTYPE_class_alnum, _nl_C_LC_CTYPE_map_toupper, _nl_C_LC_CTYPE_map_tolower, _nl_C_LC_CTYPE_width, and as hidden. * locale/findlocale.c: Declare _nl_C as hidden. * locale/newlocale.c: Likewise. * locale/setlocale.c: Define _nl_C as hidden. Remove declaration of _nl_locale_file_list. * locale/xlocale.c: Declare _nl_C_LC_CTYPE_class, _nl_C_LC_CTYPE_toupper, and _nl_C_LC_CTYPE_tolower as hidden. Define _nl_C_locobj as hidden. * malloc/mtrace.c (_mtrace_file): Define as hidden. (_mtrace_line): Likewise. * include/time.h: Declare __mon_yday as hidden. * time/strptime.c [_LIBC] (__mon_yday): Remove declaration. * libio/libioP.h: Declare __libio_codecvt as hidden. * libio/fileops.c: Declare __libio_translit as hidden. * libio/iofwide.c: Define __libio_translit as hidden. * login/getutent_r.c: Define __libc_utmp_lock as hidden. * login/getutid_r.c: Declare __libc_utmp_lock as hidden. * login/getutline_r.c: Likewise. * login/utmpname.c: Likewise. * login/utmp-private.h: Declare __libc_utmp_file_functions, __libc_utmp_unknown_functions, __libc_utmp_jump_table, and __libc_utmp_file_name as hidden. * locale/setlocale.c (__libc_setlocale_lock): Define as hidden. * locale/duplocale.c (__libc_setlocale_lock): Declare as hidden. * locale/freelocale.c: Likewise. * locale/lc-time.c: Likewise. * sysdeps/unix/bsd/getpt.c (__libc_ptyname1): Define as hidden. (__libc_ptyname2): Likewise. * sysdeps/unix/sysv/linux/ptsname.c (__libc_ptyname1): Declare as hidden. (__libc_ptyname2): Likewise. * sysdeps/generic/sbrk.c: Declare __libc_multiple_libcs as hidden. * sysdeps/arm/init-first.c (__libc_multiple_libcs): Define as hidden. * sysdeps/generic/init-first.c: Likewise. * sysdeps/i386/init-first.c: Likewise. * sysdeps/mach/hurd/i386/init-first.c: Likewise. * sysdeps/mach/hurd/mips/init-first.c: Likewise. * sysdeps/mach/hurd/powerpc/init-first.c: Likewise. * sysdeps/sh/init-first.c: Likewise. * sysdeps/unix/sysv/aix/init-first.c: Likewise. * sysdeps/unix/sysv/linux/init-first.c: Likewise.
2002-03-13Update.Ulrich Drepper
* stdio-common/itowa-digits.c (_itowa_lower_digits): Define as hidden. (_itowa_upper_digits): Likewise. * libio/stdio.c (_IO_stdin, _IO_stdout, _IO_stderr): Define as hidden. * libio/libio.h [_LIBC] (_IO_stdin, _IO_stdout, _IO_stderr): Declare as hidden. * libio/libioP.h: Declare _IO_file_jumps_mmap, _IO_wfile_jumps, _IO_wfile_jumps_mmap, _IO_proc_jumps, _IO_old_proc_jumps, _IO_str_jumps, _IO_wstr_jumps, _IO_file_jumps_internal, _IO_wfile_jumps_internal, and _IO_list_all_internal as hidden. * gmon/gmon.c (__bb_head): Define as hidden. * gmon/bb_exit_func.c (__bb_head): Declare as hidden. * argp/argp-parse.c (_argp_hang): Define as static. * include/libc-symbols.h (_INTVARDEF): Adjust for visibility handling in latest compilers. * inet/in6_addr.c (in6addr_any): Use INTVARDEF not INTDEF to define alias. * libio/fileops.c (_IO_file_jumps): Likewise. * libio/stdfiles.c (_IO_list_all): Likewise. * libio/wfileops.c (_IO_wfile_jumps): Likewise. * malloc/malloc.h: Move __libc_malloc_initialized declaration to include/malloc.h. * include/malloc.h: Add __libc_malloc_initialized declaration here. Mark variable hidden. * malloc/malloc.c: Include <malloc.h> not "malloc.h". * elf/dl-open.c (__libc_argc): Declare as hidden. (__libc_argv): Likewise. * sysdeps/generic/wordexp.c (__libc_argc): Declare as hidden. (__libc_argv): Likewise. * sysdeps/mach/hurd/i386/init-first.c: Define __libc_argc and __libc_argv as hidden. * sysdeps/mach/hurd/mips/init-first.c: Likewise. * sysdeps/mach/hurd/powerpc/init-first.c: Likewise. * sysdeps/unix/sysv/aix/init-first.c: Likewise. * sysdeps/unix/sysv/linux/init-first.c: Likewise.
2002-02-26Update.Ulrich Drepper
2002-02-25 Jakub Jelinek <jakub@redhat.com> * libio/iofopen.c (__fopen_maybe_mmap): Set the initial position to fp->_offset if it is set. * stdio-common/Makefile (tests): Add tst-fdopen. * stdio-common/tst-fdopen.c: New test. 2002-02-25 Jakub Jelinek <jakub@redhat.com> * libio/fileops.c (_IO_file_xsgetn_mmap): Handle reading from backup. * stdio-common/tst-ungetc.c (main): Add another test.
2002-02-26Update.Ulrich Drepper
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-22Update.Ulrich Drepper
2002-02-21 Jakub Jelinek <jakub@redhat.com> * libio/fileops.c (_IO_file_seekoff_mmap): Fix fseek SEEK_END. * stdio-common/tst-fseek.c (main): Add test for this.
2002-02-19UpdateUlrich Drepper
2002-02-19 Jakub Jelinek <jakub@redhat.com> * libio/fileops.c (_IO_file_underflow_mmap): Cast to unsigned char pointer before dereferencing.
2002-01-19Update.Ulrich Drepper
2002-01-19 Ulrich Drepper <drepper@redhat.com> * libio/fileops.c (_IO_file_underflow_mmap): Don't define as static. Set offset if read end wasn't the buffer end. (_IO_file_seekoff_mmap): New function. (_IO_file_xsgetn_mmap): New function. (_IO_file_jumps_mmap): Use the two new functions. * libio/wfileops.c (_IO_wfile_underflow_mmap): Handle end read buffer != end buffer. * libio/libioP.h: Declare _IO_file_seekoff_mmap and _IO_file_underflow_mmap. * libio/iofopen.c: Don't position file descriptor at end of file. * libio/tst-widetext.c: Improve error messages. * stdio-common/tst-rndseek.c: Likewise.
2002-01-07Update.Ulrich Drepper
2002-01-07 Ulrich Drepper <drepper@redhat.com> * libio/fileops.c (_IO_file_underflow_mmap): New function. (_IO_file_close_mmap): New function. (_IO_file_jumps_mmap): New variable. * libio/wfileops.c (_IO_wfile_underflow): Reset read pointer before trying to convert rest of byte buffer. (_IO_wfile_underflow_mmap): New function. (_IO_wfile_jumps_mmap): New variable. * libio/iofopen.c (__fopen_maybe_mmap): New function. (__fopen_internal): New function. Split out from _IO_new_fopen. (_IO_new_fopen): Call __fopen_internal. * libio/iofopen64.c: Just call __fopen_internal. * libio/iofdopen.c: Call __fopen_maybe_mmap before returning successfully. * libio/iolibio.h: Declare __fopen_internal and __fopen_maybe_mmap. * libio/libioP.h: Declare _IO_file_jumps_mmap, _IO_wfile_jumps_mmap, _IO_file_close_mmap. * sysdeps/gnu/_G_config.h: Define _G_MMAP64. * sysdeps/unix/sysv/linux/cris/_G_config.h: Likewise. * stdio-common/Makefile (tests): Add tst-rndseek. * stdio-common/tst-rndseek.c: New file.
2001-08-04Update.Ulrich Drepper
2001-08-04 Ulrich Drepper <drepper@redhat.com> * libio/fileops.c (_IO_new_file_underflow): Don't call _IO_flush_all_linebuffered. This isn't required in any standard. Instead flush only stdout. * libio/wfileops.c (_IO_wfile_underflow): Likewise.
2001-07-27Update.Ulrich Drepper
* libio/fileops.c (_IO_new_file_fopen): Correctly locate ccs= substring. Don't handle ccs= if no descriptor was allocated. Normalize codeset name before calling __wcsmbs_named_conv. Initialize transliteration elements. Free step data structure. * libio/iofclose.c (_IO_new_fclose): Correct freeing of the step data. * libio/iofwide.c (__libio_translit): Renamed from libio_translit and made public. Various little cleanup changes. * wcsmbs/wcsmbsload.h (struct gconv_fcts): Add towc_nsteps and tomb_nsteps member. * wcsmbs/wcsmbsload.c: Add some casts to avoid warnings. (__wcsmbs_gconv_fcts): Initialize towc_nsteps and tomb_nsteps member. (getfct): Take additional parameter with pointer to variable where the number of steps is stored in. Disable code which allows to use more than one step for now. Adjust all callers. (free_mem): New function. Frees data associated with currently selected converters.
2001-07-13Include unistd.h for lseek64 prototype. Closes PR libc/2372.Andreas Jaeger
2001-07-06Update to LGPL v2.1.Andreas Jaeger
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.
2000-08-29Update.Ulrich Drepper
2000-08-29 Ulrich Drepper <drepper@redhat.com> * libio/iogetline.c: Set mode before the loop in case n==0. * libio/iogetwline.c: Likewise. 2000-08-29 H.J. Lu <hjl@gnu.org> * libio/fileops.c (new_do_write): Check fp->_mode <= 0 instead of fp->_mode < 0. (_IO_new_file_overflow): Likewise. * libio/genops.c (_IO_flush_all): Likewise. * libio/ioftell.c (_IO_ftell): Likewise.
2000-08-13Update.Ulrich Drepper
2000-08-13 Ulrich Drepper <drepper@redhat.com> Benjamin Koznik <bkoz@redhat.com> * libio/fileops.c: Merge with libstdc++-v3. * libio/genops.c: Likewise. * libio/iofclose.c: Likewise. * libio/iofopen.c: Likewise. * libio/iofwide.c: Likewise. * libio/libio.h: Likewise. * libio/libioP.h: Likewise. * libio/stdfiles.c: Likewise. * libio/stdio.c: Likewise. * libio/wfileops.c: Likewise. * libio/wgenops.c: Likewise. * libio/Versions: Export functions needed by libstdc++-v3 in GLIBC_2.2.
2000-08-03Update.Ulrich Drepper
2000-08-03 Ulrich Drepper <drepper@redhat.com> * libio/iofwide.c (_IO_fwide): Initialize fp->_codecvt as well. * libio/fileops.c (_IO_new_file_fopen): Use _codecvt not from _wide_data but from _IO_FILE directly. * libio/iofclose.c: Likewise. * libio/wfileops.c: Likewise. * libio/genops.c (_IO_default_showmanyc): Change return type to size_t. * libio/libioP.h: Change prototypes.
2000-07-25Pretty print.Ulrich Drepper
2000-06-292000-06-28 Greg McGary <greg@mcgary.org>Greg McGary
* libio/libio.h (struct _IO_cookie_file): Move struct type defintion out. (_IO_FILE): Declare chain as (struct _IO_FILE_plus *). * libio/libioP.h (struct _IO_cookie_file): Move struct type defintion in. (_IO_JUMPS): Don't cast THIS--expect arg to be a (struct _IO_FILE_plus *). (_IO_JUMPS_FUNC): Express in terms of _IO_JUMPS, and add cast to THIS, since _IO_JUMPS no longer does it implicitly. (_IO_file_init, _IO_old_file_init, _IO_new_file_init): Declare arg type as (struct _IO_FILE_plus *). (_IO_str_init_static, _IO_str_init_readonly): Declare 1st arg as (_IO_strfile *). * libio/strops.c (_IO_str_init_static, _IO_str_init_readonly): Declare 1st arg as (_IO_strfile *). * libio/fileops.c (_IO_new_file_init): Declare arg type as (struct _IO_FILE_plus *). * libio/oldfileops.c (_IO_old_file_init): Likewise. * libio/genops.c (_IO_link_in, _IO_un_link): Likewise. (_IO_flush_all, _IO_flush_all_linebuffered, _IO_unbuffer_write): Declare iteration pointer as (struct _IO_FILE_plus *). (_IO_iter_next, _IO_iter_file): _IO_ITER is now (struct _IO_FILE_plus *). * libio/stdfiles.c (_IO_list_all): Declare as (struct _IO_FILE_plus *). * libio/oldstdfiles.c (_IO_list_all): Likewise. (_IO_check_libio): Set user-visible handles to (struct _IO_FILE_plus *). * libio/stdio.c (stdin, stdout, stderr): Set user-visible handles to (struct _IO_FILE_plus *). * libio/iofdopen.c (_IO_new_fdopen): Pass FILE handle pointer whose high bound includes vtable to all functions that will use vtable. For streambufs, pass pointer whose bounds include struct _IO_strfile. * libio/wgenops.c (_IO_wdefault_finish): Likewise. * libio/oldiofdopen.c (_IO_old_fdopen): Likewise. * libio/iofopen.c (_IO_new_fopen): Likewise. * libio/oldiofopen.c (_IO_old_fopen): Likewise. * libio/iofopen64.c (_IO_fopen64): Likewise. * libio/iopopen.c (_IO_new_popen): Likewise. * libio/oldiopopen.c (_IO_old_popen): Likewise. * libio/memstream.c (open_memstream): Likewise. * libio/iovsscanf.c (_IO_vsscanf): Likewise. * libio/iovsprintf.c (_IO_vsprintf): Likewise. * libio/iovdprintf.c (_IO_vdprintf): Likewise. * libio/iofopncook.c (_IO_cookie_init): Likewise. * libio/obprintf.c (_IO_obstack_vprintf): Likewise. * libio/vasprintf.c (_IO_vasprintf): Likewise. * libio/vsnprintf.c (_IO_vsnprintf): Likewise. * libio/stdfiles.c (_IO_stdout_, _IO_stderr_): Likewise. * libio/oldstdfiles.c (_IO_stdout_, _IO_stderr_): Likewise. * stdlib/strfmon.c (__strfmon_l): Likewise. * stdio-common/vfprintf.c (buffered_vfprintf): Likewise. (vfprintf): Qualify computed-goto targets as unbounded. 2000-06-28 Greg McGary <greg@mcgary.org> * libio/libio.h (struct _IO_cookie_file): Move struct type defintion out. (_IO_FILE): Declare chain as (struct _IO_FILE_plus *). * libio/libioP.h (struct _IO_cookie_file): Move struct type defintion in. (_IO_JUMPS): Don't cast THIS--expect arg to be a (struct _IO_FILE_plus *). (_IO_JUMPS_FUNC): Express in terms of _IO_JUMPS, and add cast to THIS, since _IO_JUMPS no longer does it implicitly. (_IO_file_init, _IO_old_file_init, _IO_new_file_init): Declare arg type as (struct _IO_FILE_plus *). (_IO_str_init_static, _IO_str_init_readonly): Declare 1st arg as (_IO_strfile *). * libio/strops.c (_IO_str_init_static, _IO_str_init_readonly): Declare 1st arg as (_IO_strfile *). * libio/fileops.c (_IO_new_file_init): Declare arg type as (struct _IO_FILE_plus *). * libio/oldfileops.c (_IO_old_file_init): Likewise. * libio/genops.c (_IO_link_in, _IO_un_link): Likewise. (_IO_flush_all, _IO_flush_all_linebuffered, _IO_unbuffer_write): Declare iteration pointer as (struct _IO_FILE_plus *). (_IO_iter_next, _IO_iter_file): _IO_ITER is now (struct _IO_FILE_plus *). * libio/stdfiles.c (_IO_list_all): Declare as (struct _IO_FILE_plus *). * libio/oldstdfiles.c (_IO_list_all): Likewise. (_IO_check_libio): Set user-visible handles to (struct _IO_FILE_plus *). * libio/stdio.c (stdin, stdout, stderr): Set user-visible handles to (struct _IO_FILE_plus *). * libio/iofdopen.c (_IO_new_fdopen): Pass FILE handle pointer whose high bound includes vtable to all functions that will use vtable. For streambufs, pass pointer whose bounds include struct _IO_strfile. * libio/wgenops.c (_IO_wdefault_finish): Likewise. * libio/oldiofdopen.c (_IO_old_fdopen): Likewise. * libio/iofopen.c (_IO_new_fopen): Likewise. * libio/oldiofopen.c (_IO_old_fopen): Likewise. * libio/iofopen64.c (_IO_fopen64): Likewise. * libio/iopopen.c (_IO_new_popen): Likewise. * libio/oldiopopen.c (_IO_old_popen): Likewise. * libio/memstream.c (open_memstream): Likewise. * libio/iovsscanf.c (_IO_vsscanf): Likewise. * libio/iovsprintf.c (_IO_vsprintf): Likewise. * libio/iovdprintf.c (_IO_vdprintf): Likewise. * libio/iofopncook.c (_IO_cookie_init): Likewise. * libio/obprintf.c (_IO_obstack_vprintf): Likewise. * libio/vasprintf.c (_IO_vasprintf): Likewise. * libio/vsnprintf.c (_IO_vsnprintf): Likewise. * libio/stdfiles.c (_IO_stdout_, _IO_stderr_): Likewise. * libio/oldstdfiles.c (_IO_stdout_, _IO_stderr_): Likewise. * stdlib/strfmon.c (__strfmon_l): Likewise. * stdio-common/vfprintf.c (buffered_vfprintf): Likewise. (vfprintf): Qualify computed-goto targets as unbounded.
2000-06-06Update.Ulrich Drepper
* iconv/gconv.h (__GCONV_IS_LAST, __GCONV_IGNORE_ERRORS): Define. (struct __gconv_step_data): Rename __is_last to __flags. * iconv/gconv_close.c: Change all uses of __is_last. * iconv/skeleton.c: Likewise. * iconvdata/iso-2022-cn.c: Likewise. * iconvdata/iso-2022-jp.c: Likewise. * iconvdata/iso-2022-kr.c: Likewise. * iconv/gconv_open.c: Likewise. Avoid unneeded initializations. Recognize IGNORE error handling, set flag, and remove from name. * iconv/loop.c (ignore_errors_p): Define. Add flags parameter to both functions. * iconv/skeleton.c: Pass flags to all conversion functions. * iconv/gconv_simple.c: Add flags parameter to all functions. Don't return error for invald error if ignore flag is set. (ucs4_internal_loop_single): Add missing pointer increment. (internal_ucs4le_loop_single): Likewise. * iconv/iconv_prog.c: Implement handling of -c parameter. * iconvdata/8bit-gap.c: Don't return error for invald error if ignore flag is set. * iconvdata/8bit-generic.c: Likewise. * iconvdata/ansi_x3.110.c: Likewise. * iconvdata/big5.c: Likewise. * iconvdata/big5hkscs.c: Likewise. * iconvdata/euc-cn.c: Likewise. * iconvdata/euc-jp.c: Likewise. * iconvdata/euc-kr.c: Likewise. * iconvdata/gbgbk.c: Likewise. * iconvdata/gbk.c: Likewise. * iconvdata/iso-2022-cn.c: 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/johab.c: Likewise. * iconvdata/sjis.c: Likewise. * iconvdata/t.61.c: Likewise. * iconvdata/uhc.c: Likewise. * iconvdata/unicode.c: Likewise. * iconvdata/utf-16.c: Likewise. * libio/fileops.c: Likewise. * libio/iofwide.c: Likewise. * wcsmbs/btowc.c: Likewise. * wcsmbs/mbrtowc.c: Likewise. * wcsmbs/mbsnrtowcs.c: Likewise. * wcsmbs/mbsrtowcs.c: Likewise. * wcsmbs/wcrtomb.c: Likewise. * wcsmbs/wcsnrtombs.c: Likewise. * wcsmbs/wcsrtombs.c: Likewise. * wcsmbs/wctob.c: Likewise. * iconvdata/ksc5601.h (ksc5601_to_ucs4): Undo *s change in all cases of
2000-05-28Update.Ulrich Drepper
2000-05-21 Jakub Jelinek <jakub@redhat.com> * libio/libioP.h (_IO_CHECK_WIDE): Define. * libio/iosetbuffer.c (_IO_setbuffer): Use it. Call _IO_WSETBUF even for _mode 1. * libio/iosetvbuf.c (_IO_setvbuf): Likewise. * libio/fileops.c (_IO_new_file_fopen): Return NULL if _IO_CHECK_WIDE fails.
2000-03-21Update.Ulrich Drepper
* libio/fileops.c: Use new macros from shlib-compat.h to define versions. * libio/iofclose.c: Likewise. * libio/oldiofclose.c: Likewise.
2000-01-26Update.Ulrich Drepper
* libio/fileops.c (_IO_new_file_open): Recognize ,ccs= in mode string and load appropriate conversions. * libio/iofwide.c (__libio_codecvt): Renamed from libio_codecvt and made global. * libio/libioP.h: Declare __libio_codecvt. * manual/stdio.texi: Document ,ccs= option for fopen. * wcsmbs/wcsmbsload.c (__wcsmbs_named_conv): New function. * wcsmbs/wcsmbsload.h (__wcsmbs_named_conv): Declare. * libio/iofclose.c: Free conversion data if stream was wide-oriented. * sysdeps/unix/sysv/linux/i386/Dist: Add sys/io.h.
1999-08-25Update.Ulrich Drepper
* libio/fileops.c (_IO_new_file_xsputn): Use _IO_OVERFLOW instead of __overflow.
1999-08-18Update.Ulrich Drepper
* libio/fileops.c (_IO_file_xsgetn): Allocate buffer if none is allocated so far. [PR libc/1261].
1999-07-21* libio/fileops.c (_IO_new_file_underflow): Set error indicatorAndreas Schwab
when reading from write-only stream. * libio/oldfileops.c (_IO_old_file_underflow): Likewise. * libio/wfileops.c (_IO_wfile_underflow): Likewise. 1999-07-21 Andreas Schwab <schwab@suse.de>
1999-07-08Update.Ulrich Drepper
1999-07-08 Andreas Schwab <schwab@suse.de> * libio/iofopncook.c (fopencookie): Set _fileno to -2. * libio/libioP.h (_IO_file_is_open): Only check for -1, not all negative numbers. * libio/fileops.c (_IO_new_file_close_it): Set _fileno to -1, not EOF. * libio/oldfileops.c (_IO_old_file_close_it): Likewise. 1999-07-08 Andreas Schwab <schwab@suse.de> * stdio-common/vfprintf.c (buffered_vfprintf): Initialize _mode. 1999-07-08 Andreas Schwab <schwab@suse.de> * libio/fileno.c: Return -1 instead of EOF and set errno if the stream is not a real file stream. 1999-07-08 Andreas Schwab <schwab@suse.de> * manual/charset.texi: Fix typos.
1999-06-16Update.Ulrich Drepper
* 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.