Commit Graph

97 Commits

Author SHA1 Message Date
Ulrich Drepper
6fee336275 Update.
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-11 23:57:58 +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
483b8cc6cf (_IO_new_file_overflow): Handle switching to write mode from read of backup buffer. 2003-09-06 05:16:44 +00:00
Ulrich Drepper
e3c54d8055 Update.
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-04 08:53:13 +00:00
Ulrich Drepper
ee8449f729 Update.
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-04 08:27:37 +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
Ulrich Drepper
7329994338 Update.
More cancellation handling fixups.
	* sysdeps/unix/sysv/linux/not-cancel.h: Add waitpid_not_cancel.
	* sysdeps/generic/not-cancel.h: Likewise.
	* catgets/open_catalog.c: Use not-cancelable syscalls.
	* time/Makefile (CFLAGS-getdate.c): Add -fexceptions.
	* sysdeps/unix/sysv/linux/llseek.c: Must not be cancelable.
	* sysdeps/unix/syscalls.list: Don't mark lseek as cancelable.
	* dlfcn/dlfcn.h: Mark dlopen with __THROW again.
	* io/fcntl.h: Don't mark posix_fallocate with __THROW.
	* libio/fileops.c: Use not-cancelable syscalls for fclose.
	* libio/iopopen.c: Use no-cancelable syscalls.
	* libio/stdio.h: Mark popen and pclose with __THROW again.
	* misc/Makefile (CFLAGS-syslog.c): Add -fexceptions.
	* misc/syslog.c: Fix locking and cancellation cleanup handling.
	* posix/unistd.h: Mark ttyname and ttyname_r again with __THROW.
	* stdio-common/Makefile (CFLAGS-tmpfile.c, CFLAGS-tmpfile64.c,
	CFLAGS-tempname.c): Add -fexceptions.
	* stdlib/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
	* string/string.h: Mark strerror and strerror_r with _THROW again.
	* sysdeps/generic/unwind.inc: New file.  Copied from gcc.
	* sysdeps/generic/unwind-dw2.c: Update from gcc version.  Remove
	#ifs since we now need all the code compiled.
	* sysdeps/posix/spawni.c: Use close_not_cancel instead of close.
	* sysdeps/unix/closedir.c: Use not-cancelable syscalls.
	* sysdeps/unix/opendir.c: Likewise.
2003-07-15 07:52:52 +00:00
Ulrich Drepper
49b650430e Update.
2003-05-31  Ulrich Drepper  <drepper@redhat.com>

	* libio/fileops.c (_IO_file_open): Don't mark as inline.

	* sysdeps/ia64/elf/initfini.c ((gmon_initializer): Mark with
	attribute used.
2003-05-31 07:50:12 +00:00
Roland McGrath
4ab6f47ce3 * libio/fileops.c (_IO_file_close_it): Macro tweak to avoid warning.
* sysdeps/generic/libc-start.c [NEED_DL_SYSINFO]: Add decl for
	INTUSE(__register_frame_info_bases).
2003-04-16 03:12:34 +00:00
Ulrich Drepper
9587cf0f70 (_IO_new_file_fopen): Don't free step data right after getting them. 2003-04-05 20:36:49 +00:00
Roland McGrath
15a686af58 * scripts/abilist.awk: If variable `parse_names' is set, grok the file
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-27 11:54:09 +00:00
Ulrich Drepper
1739d26836 Update.
* 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-03-03 18:36:14 +00:00
Ulrich Drepper
f5bf21a780 Update.
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.
2003-01-08 06:49:39 +00:00
Ulrich Drepper
ee2a5ae875 Update.
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-12-31 23:13:55 +00:00
Roland McGrath
4483f2c0f8 * crypt/md5-crypt.c: Doc fix. 2002-11-11 02:43:35 +00:00
Ulrich Drepper
b7fc6d07af (_IO_new_file_fopen): Recognize new mode specifier 'm' to enable mmap I/O. 2002-08-30 07:04:16 +00:00
Ulrich Drepper
c096ab2534 Add i386/dl-brk.S, mips/dl-brk.S, and sparc/dl-brk.S. 2002-08-28 08:41:52 +00:00
Ulrich Drepper
6dd67bd565 Update.
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-25 04:51:08 +00:00
Roland McGrath
94b68ee976 2002-08-23 Roland McGrath <roland@redhat.com>
* 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-23 09:46:36 +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
Ulrich Drepper
230491f02c Update.
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-04 23:32:14 +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
Ulrich Drepper
78ce5a3bbb Update.
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 01:30:57 +00:00
Ulrich Drepper
66bff4092b (_IO_file_seekoff_mmap): Set fp->_offset after succesful seek call. Simply error checking. 2002-07-25 00:48:18 +00:00
Roland McGrath
11d657d727 * libio/fileops.c (_IO_file_seekoff_mmap): Don't rely on FP->_offset,
which gets moved around.  Calculate size of mmap'd buffer instead.
2002-07-24 22:54:53 +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
7e93f91553 * libio/fileops.c (_IO_file_seekoff_mmap): When just examining the
position, calculate it to take into account an active pushback buffer.

	* libio/Makefile (tests): Add bug-ungetc.
	* libio/bug-ungetc.c: New file.
2002-07-24 09:35:24 +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
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
44c4ccbcca Update.
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-04-03 03:12:43 +00:00
Ulrich Drepper
2c617417f4 Update.
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-16 04:00:20 +00:00
Ulrich Drepper
ab26a24a17 Update.
* 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-13 06:33:52 +00:00
Ulrich Drepper
100351c3e1 Update.
* 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-03-13 02:17:12 +00:00
Ulrich Drepper
b39d571990 Update.
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-26 05:23:31 +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
903b3396b8 Update.
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-22 05:11:26 +00:00
Ulrich Drepper
13bc28f66b Update
2002-02-19  Jakub Jelinek  <jakub@redhat.com>

	* libio/fileops.c (_IO_file_underflow_mmap): Cast to unsigned char
	pointer before dereferencing.
2002-02-19 07:23:04 +00:00
Ulrich Drepper
284749da8b Update.
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-19 17:51:34 +00:00
Ulrich Drepper
0469311e87 Update.
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.
2002-01-07 09:33:53 +00:00
Ulrich Drepper
3d759cb8d3 Update.
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-08-04 23:59:30 +00:00
Ulrich Drepper
129d706d77 Update.
* 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-27 08:29:06 +00:00
Andreas Jaeger
c9f10034f7 Include unistd.h for lseek64 prototype. Closes PR libc/2372. 2001-07-13 13:18:44 +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
076bfcf612 Update.
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-29 22:41:42 +00:00
Ulrich Drepper
319d719d86 Update.
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-13 18:18:28 +00:00
Ulrich Drepper
faf8ccabe9 Update.
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-08-03 23:38:34 +00:00
Ulrich Drepper
f5304c1559 Pretty print. 2000-07-25 07:01:50 +00:00
Greg McGary
2ca8b1eef9 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-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-29 07:16:42 +00:00
Ulrich Drepper
85830c4c46 Update.
* 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-06-06 03:16:30 +00:00