Commit Graph

1035 Commits

Author SHA1 Message Date
Ulrich Drepper 82ee37c510 [BZ #2980]
2006-06-23  Joseph Myers  <joseph@codesourcery.com>
	[BZ #2980]
	* posix/Makefile (CFLAGS-waitid.c): Add
	-fasynchronous-unwind-tables.

2006-08-02  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-addr.c (_dl_addr): If GNU-style hash tables are present,
	walk them instead of the symbol table.
2006-08-02 16:45:53 +00:00
Ulrich Drepper 33e63e7993 * posix/regex_internal.c (re_string_skip_chars): If no character has
been converted at all, set *last_wc to WEOF.  If mbrtowc failed, set wc
	to the byte which couldn't be converted.
	(re_string_reconstruct): Don't clear valid_raw_len before calling
	re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
	tip_context using re_string_context_at.
	* posix/Makefile: Add rules to build and run bug-regex25 test.
	* posix/bug-regex25.c: New test.
2006-06-04 04:59:36 +00:00
Ulrich Drepper 6e2a782528 * sysdeps/posix/getaddrinfo.c: Add unique labels to the default
RFC3484 precedence table for fec0::/10 and fc00::/7 (site-local
	and ULA respectively). Set precedence for IPv4 address to 10 as
	defined in RFC3484 for preferring IPv6.
	* posix/gai.conf: Update to match the new default tables.
2006-05-18 16:58:36 +00:00
Ulrich Drepper 16d620db94 * posix/wordexp.c (parse_glob): No need to check ifs for NULL, the
caller makes sure this is not the case.
	(wordexp): Simplify ifs_white creation.  [Coverity CID 231]
2006-05-10 14:48:09 +00:00
Ulrich Drepper ecf359c68b * posix/wordexp.c: Remove numerous NULL pointer tests before FREE
calls.
2006-05-10 07:58:39 +00:00
Ulrich Drepper e7c8359e43 * posix/wordexp.c (w_addword): Free word if realloc fails and it
was allocated here.  [Coverity CID 219]

	* posix/getconf.c (print_all): Free confstr data after printing.
	[Coverity CID 218]

	* sysdeps/posix/getaddrinfo.c (gaih_inet): Free canon string if
	list allocation fails.  [Coverity CID 215]

	* nss/nsswitch.c (__nss_configure_lookup): Fix loop end condition.
	[Coverity CID 213]

	* argp/argp-help.c (hol_entry_cmp): Don't call canon_doc_option if
	string is NULL.  [Coverity CID 212]
	* argp/Makefile: Add rules to build and run bug-argp1.
	* argp/bug-argp1.c: New file.

	* io/ftw.c (ftw_dir): Use __rawmemchr instead of strchr to find
	end of string.
	* stdlib/canonicalize.c (__realpath): Likewise.

	* locale/programs/ld-time.c (time_finish): Don't dereference NULL
	pointer.  [Coverity CID 206]

	* elf/dl-dst.h (DL_DST_REQUIRED): Be prepared for missing link map
	in statically linked code.
	* elf/dl-load.c (_dl_dst_substitute): When replacing ORIGIN in
	statically built code, be prepared to have no link map.
	[Coverity CID 205]

	* argp/argp-help.c (fill_in_uparams): Handle STATE==NULL in
	dgettext calls. [Coverity CID 204]

	* argp/argp-help.c (struct uparams): Remove valid member.  Change
	the one user.
	(uparam_names): Reduce size.  Avoid relative relocations.
	Moved to read-only segment.
	(fill_in_uparams): Update for new layout.

	* sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Parameter can be
	assumed to always be != NULL. [Coverity CID 202]

	* argp/argp-help.c (hol_entry_help): Remove some dead code
	[Coverity CID 200].

	* nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Optimize
	away a few more unconditional yperr2nss calls.
	(_nss_nis_getservbyname_r): Likewise.
2006-05-10 00:03:41 +00:00
Ulrich Drepper 77dd4c3be8 * sysdeps/posix/getaddrinfo.c: Implement configuration file
handling.  /etc/gai.conf can contain replacements for the label
	and precedence table.  Fix byte order of default label and
	precedence table.
	* posix/gai.conf: New file.
	* posix/tst-rfc3484.c: Adjust for changes to getaddrinfo.c.
	* posix/tst-rfc3484-2.c: Likewise.
2006-05-04 06:38:07 +00:00
Ulrich Drepper 5631e740ff [BZ #1201]
* posix/regex.h: g++ still cannot handled [restrict].
2006-05-02 21:55:00 +00:00
Ulrich Drepper 846d1362cd * posix/Makefile (tests): Add tst-getaddrinfo3.
* posix/tst-getaddrinfo3.c: New file.

	* sysdeps/posix/getaddrinfo.c (gaih_inet): Add parenthesis in test
	for better readability.
2006-04-30 20:19:09 +00:00
Ulrich Drepper bdefc84c58 * posix/tst-rfc3484.c (do_test): Also initialize source_addr_flags
field.
	* posix/tst-rfc3484-2.c (do_test): Likewise.
2006-04-24 23:02:03 +00:00
Ulrich Drepper 4c5bc8287b * posix/tst-rfc3484.c: Include <ifaddrs.h> early.
* posix/tst-rfc3484-2.c: Likewise.
2006-04-24 21:11:34 +00:00
Ulrich Drepper a346370d58 * posix/bits/unistd.h (__readlinkat_chk): New prototype.
(__readlinkat_alias): New alias.
	(readlinkat): New inline function.
	* include/unistd.h (readlinkat): Add libc_hidden_proto.
	* sysdeps/unix/sysv/linux/readlinkat.c (readlinkat): Add
	libc_hidden_def.
	* io/readlinkat.c (readlinkat): Likewise.
	* debug/readlinkat_chk.c: New file.
	* debug/Makefile (routines): Add readlinkat_chk.
	* debug/Versions (libc): Export __readlinkat_chk@@GLIBC_2.5.
	* debug/tst-chk1.c (do_test): Add readlinkat tests.

	* nis/nss_nisplus/nisplus-netgrp.c: Cleanups.
	code is possible.  Move compatibility code in .text.compat section.
	over gaih array.  There is only one function to call in the moment.
2006-04-24 17:01:40 +00:00
Ulrich Drepper 41a3975907 [BZ #2534, BZ #2535]
* posix/regex.h: Remove obsolete <sys/types.h> and special
	handling for VMS.
2006-04-21 18:24:53 +00:00
Ulrich Drepper 86e0544901 * include/ifaddrs.h: Get uint32_t definition.
* posix/tst-rfc3484.c: Update fake __check_pf implementation.
	* posix/tst-rfc3484-2.c: Likewise.
2006-04-20 06:27:35 +00:00
Ulrich Drepper a238728234 * sysdeps/posix/getaddrinfo.c: Fix precedence for IP V4-to-V6
mapped addresses.
	* posix/Makefile (tests): Add tst-rfc3484-2.
	* posix/tst-rfc3484-2.c: New file.
2006-04-15 21:43:13 +00:00
Ulrich Drepper 6738b3c073 2006-04-05 Alan Modra <amodra@bigpond.net.au>
Jakub Jelinek  <jakub@redhat.com>

	* posix/bits/unistd.h (readlink, __readlink_chk, __readlink_alias):
	Change return value to ssize_t.

	Reported by S.Çağlar Onur <caglar@uludag.org.tr>.
	Patch by René Rebe <rene@exactcode.de>.
	Reported by René Rebe <rene@exactcode.de>.
2006-04-05 21:33:15 +00:00
Ulrich Drepper 6d893bd991 [BZ #2450]
* posix/unistd.h: Match return value of readlink to what POSIX
	says these days.
	* io/readlink.c: Likewise.
	* io/readlinkat.c: Likewise.
	* sysdeps/unix/sysv/linux/readlinkat.c: Likewise.
2006-04-01 19:12:44 +00:00
Roland McGrath 556c18b2b8 * posix/sys/types.h [!__GNUC_PREREQ (2, 7)] (int64_t, u_int64_t):
typedef to long int resp. unsigned long int on 64-bit arches.
2006-02-28 19:11:33 +00:00
Ulrich Drepper 5733ab9360 Add fifth parameter to linkat. 2006-02-27 05:44:25 +00:00
Roland McGrath 10814720ad * sysdeps/unix/sysv/linux/ftruncate64.c: Find generic implementation
in misc/, not posix/.
	Reported by David S. Miller <davem@davemloft.net>.

2006-02-23  Jakub Jelinek  <jakub@redhat.com>

	* posix/sched_yield.c (__sched_yield): Add libc_hidden_def.
	* sysdeps/mach/sched_yield.c (__sched_yield): Likewise.
2006-02-23 22:34:40 +00:00
Roland McGrath 0d5cb2c74f [BZ #2329]
2006-02-20  Roland McGrath  <roland@redhat.com>
	* sysdeps/mips: Directory removed, saved in ports repository.
	* sysdeps/unix/mips: Likewise.
	* sysdeps/unix/sysv/linux/mips: Likewise.
	* sysdeps/mach/mips: Likewise.
	* sysdeps/mach/hurd/mips: Likewise.
	* shlib-versions: Remove mips matches, now in ports fragment.
	* sysdeps/unix/sysv/linux/kernel-features.h: Likewise.
	* configure.in (machine): Likewise.
	* configure: Regenerated.
2006-02-15  Thomas Schwinge  <tschwinge@gnu.org>

	[BZ #2329]
	* include/unistd.h (__getresuid, __getresgid, __setresuid)
	(__setresgid): Fix argument name order in prototypes.
	* posix/unistd.h (getresuid, getresgid, setresuid, setresgid):
	Likewise.
	* posix/getresuid.c (__getresuid): Fix argument order in definition.
	* posix/getresgid.c (__getresgid): Likewise.
	* posix/setresuid.c (__setresuid): Likewise.
	* posix/setresgid.c (__setresgid): Likewise.
	* sysdeps/mach/hurd/getresuid.c (__getresuid): Likewise.
	* sysdeps/mach/hurd/getresgid.c (__getresgid): Likewise.
	* sysdeps/mach/hurd/setresuid.c (__setresuid): Likewise.
	* sysdeps/mach/hurd/setresgid.c (__setresgid): Likewise.
	Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
2006-02-21 02:30:10 +00:00
Roland McGrath ac45d7f42b * inet/rcmd.c (iruserfopen): Remove redundant initialization.
From Bernhard Fischer <rep.nop@aon.at>.

	* posix/regcomp.c (calc_eclosure_iter): Remove dead variables.
	Reported by Mike Frysinger <vapier@gentoo.org>.
2006-01-31 19:18:14 +00:00
Andreas Jaeger 4f7e7f8e00 [BZ #1950, BZ #2153]
Update.
	[BZ #1950]
	* posix/regex_internal.c (re_string_reconstruct): Adjust for
	build_wcs_upper_buffer change.
	(build_wcs_upper_buffer): Change return type.

	[BZ #2153]
	* math/s_cacosh.c (__cacosh): Do not return a negative
	value. Patch by Wes Loewer <wjltemp-temp01@yahoo.com>.
	* math/s_cacoshl.c (__cacoshl): Likewise.
	* math/s_cacoshf.c (__cacoshf): Likewise.
	* math/libm-test.inc (cacosh_test): Adjust for change.

	* sysdeps/alpha/fpu/libm-test-ulps: Adopt for cacosh test change.
	* sysdeps/hppa/fpu/libm-test-ulps: Likewise.
	* sysdeps/i386/fpu/libm-test-ulps: Likewise.
	* sysdeps/ia64/fpu/libm-test-ulps: Likewise.
	* sysdeps/m68k/fpu/libm-test-ulps: Likewise.
	* sysdeps/mips/fpu/libm-test-ulps: Likewise.
	* sysdeps/powerpc/fpu/libm-test-ulps: Likewise.
	* sysdeps/s390/fpu/libm-test-ulps: Likewise.
	* sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
	* sysdeps/sh/sh4/fpu/libm-test-ulps: Likewise.
	* sysdeps/sparc/sparc32/fpu/libm-test-ulps: Likewise.
	* sysdeps/sparc/sparc64/fpu/libm-test-ulps: Likewise.
2006-01-15 17:59:52 +00:00
Roland McGrath 49a0ba2748 [BZ #1060]
2006-01-10  Derek Price  <derek@ximbiot.com>
	    Paul Eggert  <eggert@cs.ucla.edu>

	[BZ #1060]
	* posix/glob.c: Assume freestanding C89 compiler.  Simplify cruft that
	may be replaced with GNULIB modules.  Make no attempt to find 64-bit
	versions of file access functions directly when [!_LIBC].
	Don't define GLOB_* macros here.
	(DIRENT_MUST_BE, DIRENT_MIGHT_BE_SYMLINK, DIRENT_MIGHT_BE_DIR): New
	macros to abstract dirent->d_type access.
	(GETPW_R_SIZE_MAX, GET_LOGIN_NAME_MAX): New macros to abstract sysconf
	access.
2006-01-11 05:30:12 +00:00
Roland McGrath aeb2153cd6 [BZ #1535]
* sysdeps/unix/get_child_max.c: New file.
	* posix/get_child_max.c: New file.
	* posix/Makefile (routines): Add it.
	* include/sys/sysinfo.h (__get_child_max): Declare it.
	* sysdeps/posix/sysconf.c (__sysconf) [! CHILD_MAX]: Use it.
2006-01-08 09:39:29 +00:00
Roland McGrath d15b99ac5a * io/fcntl.h [__USE_ATFILE] (AT_EACCESS): New macro.
* posix/unistd.h [__USE_ATFILE]: Declare faccessat.
	* io/faccessat.c: New file.
	* sysdeps/unix/sysv/linux/faccessat.c: New file.
	* io/Makefile (routines): Add faccessat.
	* io/Versions (libc: GLIBC_2.4): Likewise.
	* io/tst-faccessat.c: New file.
	* io/Makefile (tests): Add it.

	* io/sys/stat.h: Likewise.
2006-01-06 12:14:26 +00:00
Roland McGrath cb483e04aa * io/euidaccess.c: Add eaccess as an alias.
* sysdeps/mach/hurd/euidaccess.c: Likewise.
	* sysdeps/posix/euidaccess.c: Likewise.
	* posix/unistd.h [__USE_GNU]: Declare eaccess.
	* io/Versions (libc: GLIBC_2.4): Add eaccess.
2006-01-06 11:22:10 +00:00
Roland McGrath 0b8f25bbca * include/features.h: Grok _ATFILE_SOURCE and define __USE_ATFILE when
it or _GNU_SOURCE is defined.
	* io/fcntl.h: Protect *at and AT_* with [__USE_ATFILE] instead of
	[__USE_GNU].
	* libio/stdio.h: Likewise.
	* posix/unistd.h: Likewise.
	* time/sys/time.h: Likewise.
2006-01-05 12:25:42 +00:00
Ulrich Drepper 35c2fd59ba * posix/unistd.h (ctermid): Remove __nonnull attribute. 2006-01-03 16:13:21 +00:00
Ulrich Drepper 305bb37e1e * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (PTR_MANGLE,
PTR_MANGLE2, PTR_DEMANGLE, PTR_DEMANGLE2): Define.
	* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PTR_MANGLE,
	PTR_MANGLE2, PTR_DEMANGLE, PTR_DEMANGLE2): Define.
	* sysdeps/unix/sysv/linux/sparc/bits/setjmp.h [__WORDSIZE == 64]
	(_JMPBUF_UNWINDS): Don't demangle uc_mcontext.mc_fp.
	* sysdeps/sparc/sparc32/setjmp.S (__sigsetjmp): Mangle %fp, %sp
	and %o7.
	* sysdeps/sparc/sparc32/__longjmp.S (__longjmp): Demangle %fp, %sp
	and %o7.

2006-01-02  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PTR_MANGLE2):
	Define.
	* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (PTR_MANGLE2):
	Likewise.
	* sysdeps/s390/s390-32/__longjmp.c (__longjmp): Demangle also %r15.
	* sysdeps/s390/s390-64/__longjmp.c (__longjmp): Likewise.
	* sysdeps/s390/s390-32/setjmp.S (__sigsetjmp): Mangle also %r15.
	* sysdeps/s390/s390-32/elf/setjmp.S (__sigsetjmp): Likewise.
	* sysdeps/s390/s390-64/setjmp.S (__sigsetjmp): Likewise.
	* sysdeps/s390/s390-64/elf/setjmp.S (__sigsetjmp): Likewise.

	* sysdeps/s390/bits/setjmp.h (__jmp_buf): Add __s390_jmp_buf
	struct tag to make C++ happy.

2006-01-02  Ulrich Drepper  <drepper@redhat.com>

	* posix/Makefile ($(objpfx)annexc.out): Move -I.. to the end of
	the include list.
2006-01-02 20:57:43 +00:00
Ulrich Drepper e56bad6ce6 Update copyright year. 2006-01-01 19:15:56 +00:00
Roland McGrath 0317eaecb1 * posix/tst-execle1.c (do_test): Add a const.
* posix/tst-execle2.c (do_test): Likewise.

	* posix/transbug.c (run_test): Add some casts.
	* posix/bug-regex22.c (main): Likewise.
	* posix/bug-regex5.c (main): Likewise.
	* wcsmbs/tst-mbsrtowcs.c (main): Likewise.
	* string/test-strspn.c (do_test, do_random_tests): Likewise.
	* string/test-strrchr.c (do_test, do_random_tests): Likewise.
	* string/test-strlen.c (do_random_tests): Likewise.
	* string/test-strpbrk.c (do_test, do_random_tests): Likewise.
	* string/test-strcmp.c (do_random_tests): Likewise.
	* string/test-strchr.c (do_test, do_random_tests): Likewise.
	* string/test-strcat.c (do_test, do_random_tests): Likewise.
	* string/test-strncpy.c (do_random_tests): Likewise.
	* string/test-strcpy.c (do_test, do_random_tests): Likewise.
	* string/test-memccpy.c (do_test): Likewise.
	* string/test-memmove.c (do_test, do_random_tests): Likewise.
	* string/test-memcpy.c (do_test, do_random_tests): Likewise.
	* string/test-memcmp.c (do_test, do_random_tests): Likewise.
	* string/test-memchr.c (do_test, do_random_tests): Likewise.
	* dlfcn/bug-atexit1.c (do_test): Fix up prototype in cast.
	* stdio-common/tst-fgets.c (do_test): Add a cast.
	* iconvdata/bug-iconv4.c (xiconv): Add a cast.

	* locale/programs/simple-hash.c (insert_entry_2): Remove useless casts.

	* resolv/herror.c (herror): Remove unused extern decl.

	* libio/obprintf.c: Include "strfile.h".

	* elf/order2mod2.c (init): Cast ignored value to void.

	* stdio-common/tstdiomisc.c: If FLT_EVAL_METHOD is 2, use long
2005-12-27 22:50:12 +00:00
Roland McGrath 89c47e9c50 2005-12-27 Roland McGrath <roland@redhat.com>
* posix/tst-execle1.c (do_test): Add a const.
	* posix/tst-execle2.c (do_test): Likewise.
2005-12-27 22:49:45 +00:00
Ulrich Drepper 5c46041a9c * sysdeps/unix/sysv/linux/renameat.c: Move errno setting code in
separate function __atfct_seterrno_2.
	* include/fcntl.h: Declare __atfct_seterrno_2.
	* posix/unistd.h: Declare linkat, symlinkat, readlinkat.
	* io/Makefile (routines): Add linkat, symlinkat, readlinkat.
	* io/Versions [GLIBC_2.4]: Export linkat, symlinkat, readlinkat.
	* io/linkat.c: New file.
	* io/readlinkat.c: New file.
	* io/symlinkat.c: New file.
	* sysdeps/unix/sysv/linux/linkat.c: New file.
	* sysdeps/unix/sysv/linux/readlinkat.c: New file.
	* sysdeps/unix/sysv/linux/symlinkat.c: New file.
2005-12-16 00:24:16 +00:00
Ulrich Drepper 9d13fb2413 Moved to csu/errno-loc.c. 2005-12-14 15:06:39 +00:00
Ulrich Drepper b6ab06cef4 2005-12-13 Ulrich Drepper <drepper@redhat.com> 2005-12-14 08:43:25 +00:00
Ulrich Drepper 1ad07b7739 * posix/regex_internal.h: Include <stdint.h> if available.
2005-12-06  Paolo Bonzini  <bonzini@gnu.org>

	* posix/regex_internal.h (SIZE_MAX): Provide a default definition.
2005-12-11 05:59:13 +00:00
Ulrich Drepper 43bc8ac6ea * catgets/gencat.c: Use GPL, not LGPL.
* elf/cache.c: Likewise.
	* elf/chroot_canon.c: Likewise.
	* elf/ldconfig.c: Likewise.
	* elf/readlib.c: Likewise.
	* iconv/dummy-repertoire.c: Likewise.
	* iconv/iconv_charmap.c: Likewise.
	* iconv/iconv_prog.c: Likewise.
	* iconv/iconvconfig.c: Likewise.
	* locale/programs/3level.h: Likewise.
	* locale/programs/charmap-dir.c: Likewise.
	* locale/programs/charmap-dir.h: Likewise.
	* locale/programs/charmap-kw.gperf: Likewise.
	* locale/programs/charmap.c: Likewise.
	* locale/programs/charmap.h: Likewise.
	* locale/programs/config.h: Likewise.
	* locale/programs/ld-address.c: Likewise.
	* locale/programs/ld-collate.c: Likewise.
	* locale/programs/ld-ctype.c: Likewise.
	* locale/programs/ld-identification.c: Likewise.
	* locale/programs/ld-measurement.c: Likewise.
	* locale/programs/ld-messages.c: Likewise.
	* locale/programs/ld-monetary.c: Likewise.
	* locale/programs/ld-name.c: Likewise.
	* locale/programs/ld-numeric.c: Likewise.
	* locale/programs/ld-paper.c: Likewise.
	* locale/programs/ld-telephone.c: Likewise.
	* locale/programs/ld-time.c: Likewise.
	* locale/programs/linereader.c: Likewise.
	* locale/programs/linereader.h: Likewise.
	* locale/programs/locale-spec.c: Likewise.
	* locale/programs/locale.c: Likewise.
	* locale/programs/localedef.c: Likewise.
	* locale/programs/localedef.h: Likewise.
	* locale/programs/locarchive.c: Likewise.
	* locale/programs/locfile-kw.gperf: Likewise.
	* locale/programs/locfile-token.h: Likewise.
	* locale/programs/locfile.c: Likewise.
	* locale/programs/locfile.h: Likewise.
	* locale/programs/repertoire.c: Likewise.
	* locale/programs/repertoire.h: Likewise.
	* locale/programs/simple-hash.c: Likewise.
	* locale/programs/simple-hash.h: Likewise.
	* locale/programs/xmalloc.c: Likewise.
	* locale/programs/xstrdup.c: Likewise.
	* malloc/memusagestat.c: Likewise.
	* nscd/aicache.c: Likewise.
	* nscd/cache.c: Likewise.
	* nscd/connections.c: Likewise.
	* nscd/dbg_log.c: Likewise.
	* nscd/gai.c: Likewise.
	* nscd/getgrgid_r.c: Likewise.
	* nscd/getgrnam_r.c: Likewise.
	* nscd/gethstbyad_r.c: Likewise.
	* nscd/gethstbynm2_r.c: Likewise.
	* nscd/getpwnam_r.c: Likewise.
	* nscd/getpwuid_r.c: Likewise.
	* nscd/grpcache.c: Likewise.
	* nscd/hstcache.c: Likewise.
	* nscd/initgrcache.c: Likewise.
	* nscd/mem.c: Likewise.
	* nscd/nscd.c: Likewise.
	* nscd/nscd_conf.c: Likewise.
	* nscd/pwdcache.c: Likewise.
	* posix/getconf.c: Likewise.
	* sysdeps/generic/nscd_setup_thread.c: Likewise.
	* sysdeps/unix/sysv/linux/nscd_setup_thread.c: Likewise.
2005-12-07 05:49:17 +00:00
Ulrich Drepper 26cec518ac * io/Makefile (routines): Add fstatat, fstatat64, fxstatat, fxstatat64,
fchownat, and unlinkat.
	(static-only-routines): Add fstatat and fstatat64.
	(tests): Add tst-unlinkat, tst-fstatat, tst-futimesat, tst-renameat,
	and tst-fchownat.
	* io/Versions [GLIBC_2.4]: Add fchownat, __fxstatat, __fxstatat64,
	and unlinkat.
	* io/fcntl.h: Define AT_FDCWD, AT_SYMLINK_NOFOLLOW, and AT_REMOVEDIR.
	* io/fstatat.c: New file.
	* io/fstatat64.c: New file.
	* io/sys/stat.h: Declare fstatat, fstatat64, __fxstatat, __fxstatat64
	and define fstatat and fstatat64 inline functions.
	* libio/stdio.h: Declare renameat.
	* misc/Makefile (routines): Add futimesat.
	* misc/Versions [GLIBC_2.4]: Add futimesat.
	* posix/unistd.h: Declare fchownat and unlinkat.
	* stdio-common/Makefile (routines): Add renameat.
	* stdio-common/Versions [GLIBC_2.4]: Add renameat.
	* sysdeps/generic/fchownat.c: New file.
	* sysdeps/generic/futimesat.c: New file.
	* sysdeps/generic/fxstatat.c: New file.
	* sysdeps/generic/fxstatat64.c: New file.
	* sysdeps/generic/renameat.c: New file.
	* sysdeps/generic/unlinkat.c: New file.
	* sysdeps/unix/sysv/linux/fchownat.c: New file.
	* sysdeps/unix/sysv/linux/futimesat.c: New file.
	* sysdeps/unix/sysv/linux/fxstatat.c: New file.
	* sysdeps/unix/sysv/linux/fxstatat64.c: New file.
	* sysdeps/unix/sysv/linux/renameat.c: New file.
	* sysdeps/unix/sysv/linux/unlinkat.c: New file.
	* sysdeps/unix/sysv/linux/alpha/fxstatat.c: New file.
	* sysdeps/unix/sysv/linux/i386/fchownat.c: New file.
	* sysdeps/unix/sysv/linux/i386/fxstatat.c: New file.
	* sysdeps/unix/sysv/linux/m68k/fchownat.c: New file.
	* sysdeps/unix/sysv/linux/m68k/fxstatat.c: New file.
	* sysdeps/unix/sysv/linux/powerpc/fchownat.c: New file.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/fxstatat.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/fxstatat.c: New file.
	* sysdeps/unix/sysv/linux/sh/fchownat.c: New file.
	* sysdeps/unix/sysv/linux/sh/fxstatat.c: New file.
	* sysdeps/unix/sysv/linux/sparc/sparc32/fchownat.c: New file.
	* sysdeps/unix/sysv/linux/sparc/sparc32/fxstatat.c: New file.
	* sysdeps/unix/sysv/linux/sparc/sparc64/fxstatat.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/fxstatat.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/fxstatat64.c: New file.
	* time/sys/time.h: Declare futimesat.
	* include/fcntl.h: Declare __atfct_seterrno.
	* sysdeps/unix/sysv/linux/openat.c (__atfct_seterrno): New function.
	Split out from openat code and called.
	(do_test): Allow openat to fail with ENOSYS.  Handle AT_FDCWD.
	* sysdeps/generic/openat.c: Handle AT_FDCWD.
	* sysdeps/generic/openat64.c: Likewise.
	* io/tst-unlinkat.c: New file.
	* io/tst-fstatat.c: New file.
	* io/tst-futimesat.c: New file.
	* io/tst-renameat.c: New file.
	* io/tst-fchownat.c: New file.
	* io/tst-openat.c: Don't fail if openat is not implemented.

	* sysdeps/unix/sysv/linux/powerpc/chown.c: Don't provide backward
	compatibility code if new kernel is guaranteed.

	* time/sys/time.h: Add a few nonnull attributes.
2005-11-11 20:02:07 +00:00
Ulrich Drepper 57d44131d8 * configure.in: Remove gnu_ld definition and everything using it.
* config.h.in: Remove HAVE_GNU_LD.
	* csu/Makefile: Remove use of gnu-ld.
	* csu/munch.awk: Removed.
	* csu/munch-tmpl.c: Removed.
	* include/libc-symbols.h: Remove use of HAVE_GNU_LD.
	* posix/execl.c: Likewise.
	* posix/execv.c: Likewise.
	* stdio-common/psignal.c: Likewise.
	* stdlib/exit.c: Likewise.
	* string/strsignal.c: Likewise.
	* string/tester.c: Likewise.
	* sysdeps/generic/errlist.c: Likewise.
	* sysdeps/generic/getenv.c: Likewise.
	* sysdeps/generic/getgroups.c: Likewise.
	* sysdeps/generic/init-posix.c: Likewise.
	* sysdeps/posix/gettimeofday.c: Likewise.
	* sysdeps/posix/system.c: Likewise.
	* sysdeps/unix/bsd/init-posix.c: Likewise.
	* sysdeps/unix/bsd/ulimit.c: Likewise.
	* sysdeps/unix/bsd/sun/m68k/brk.S: Likewise.
	* sysdeps/unix/bsd/sun/m68k/sethostid.S: Likewise.
	* sysdeps/unix/bsd/sun/sparc/sethostid.S: Likewise.
	* sysdeps/unix/i386/brk.S: Likewise.
	* sysdeps/unix/sparc/brk.S: Likewise.
2005-11-06 02:06:06 +00:00
Ulrich Drepper 9b0c3f38d3 [BZ #1224]
2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
	[BZ #1224]
	* posix/regcomp.c (init_word_char, duplicate_node_closure,
	fetch_token, peek_token_bracket, build_range_exp,
	build_collating_symbol): Remove forward decls; no longer needed
	now that we use prototypes.
2005-10-15 21:14:58 +00:00
Ulrich Drepper 684e5a2e89 [BZ #1221]
* posix/regex_internal.h: Remove last traces of
	RE_NO_INTERNAL_PROTOTYPES.
2005-10-15 20:59:51 +00:00
Ulrich Drepper 1ba81cea27 * posix/regexec.c: Finish prototyping of static functions.
* posix/regex_internal.c: Likewise.
2005-10-15 15:23:33 +00:00
Ulrich Drepper 7d4722e3fd [BZ #368]
* SUPPORTED (SUPPORTED-LOCALES): Add dz_BT.UTF-8.
	[BZ #368]
	* locales/dz_BT: New file.
2005-10-14 22:56:25 +00:00
Ulrich Drepper 513bbb254d [BZ #1373]
2005-10-13  Ulrich Drepper  <drepper@redhat.com>
	[BZ #1373]
	* argp/argp.h: Remove __NTH for __argp_usage inline function.
2005-10-14 05:54:47 +00:00
Ulrich Drepper db26cb7576 [BZ #1248]
2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
	[BZ #1248]
	* posix/regex_internal.h (bitset_not, bitset_merge, bitset_not_merge,
	bitset_mask, re_string_allocate, re_string_construct,
	re_string_reconstruct, re_string_destruct, re_string_elem_size_at,
	re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case,
	re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1,
	re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect,
	re_node_set_init_union, re_node_set_merge, re_node_set_insert,
	re_node_set_insert_last, re_node_set_compare, re_node_set_contains,
	re_node_set_remove_at, re_dfa_add_node, re_acquire_state,
	re_acquire_state_context): Remove unnecessary forward decls.
	(re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
	Put __attribute at function definition, now that the function decl
	has been removed.
	* posix/regex_internal.c (re_string_peek_byte_case,
	re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
	Likewise.
2005-10-13 21:10:24 +00:00
Ulrich Drepper 0fd8ae9c17 * posix/regcomp.c: Likewise. 2005-10-13 20:40:05 +00:00
Ulrich Drepper e2f5526407 [BZ #1231]
2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
	[BZ #1231]
	* posix/regex_internal.c (re_string_skip_chars, register_state,
	calc_state_hash): Remove forward decls.
	* posix/regexec.c (acquire_init_state_context, check_halt_node_context,
	proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes,
	clean_state_log_if_needed): Likewise.

	* posix/regex.c: No need to use K&R definitions for static functions.
	* posix/regex_internal.c: Likewise.
2005-10-13 20:08:58 +00:00
Ulrich Drepper 2ff89ea46f * posix/regex.h: Pretty printing.
Clean up namespace a bit.
2005-09-30 16:07:32 +00:00
Ulrich Drepper c0c9615cbb * posix/regexec.c (update_cur_sifted_state, check_arrival,
check_arrival_add_next_nodes): Avoid using uninitialized variable.

	* malloc/memusage.c (dest): Fix a bunch of warnings on 32-bit arches.

	* sysdeps/i386/fpu/libm-test-ulps: Update for GCC 4.0.x.
2005-09-30 15:46:19 +00:00
Roland McGrath ffc9bccd84 [BZ #1392]
2005-09-29  Roland McGrath  <roland@redhat.com>
	[BZ #1392]
	* posix/sys/wait.h [!__GNUC__ || __cplusplus] (__WAIT_INT): Use const.
2005-09-29 22:03:12 +00:00
Roland McGrath c704fb3b0f [BZ #1392]
2005-09-29  Roland McGrath  <roland@redhat.com>
	[BZ #1392]
	* posix/sys/wait.h (__WAIT_INT): Rewrite using an initializer,
	in case __typeof yields a const-qualified type.
2005-09-29 20:44:44 +00:00
Ulrich Drepper 2c05d33f90 [BZ #1302]
2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
            Ulrich Drepper  <drepper@redhat.com>

	[BZ #1302]
	Change bitset word type from unsigned int to unsigned long int,
	as this has better performance on typical 64-bit hosts.  Change
	bitset type name to bitset_t.
	* posix/regcomp.c (build_equiv_class, build_charclass):
	(build_range_exp, build_collating_symbol):
	Prefer bitset_t to re_bitset_ptr_t in prototypes, when the actual
	argument is a bitset.  This is merely a style issue, but it makes
	it clearer that an entire array is expected.
	(re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps,
	lower_subexp): Adjust for new bitset_t definition.
	(lower_subexp, parse_bracket_exp, built_charclass_op): Likewise.
	* posix/regex_internal.h (bitset_set, bitset_clear, bitset_contain,
	bitset_not, bitset_merge, bitset_set_all, bitset_mask): Likewise.
	* posix/regexec.c (check_dst_limits_calc_pos_1,
	check_subexp_matching_top, build_trtable, group_nodes_into_DFAstates):
	Likewise.
	* posix/regcomp.c (utf8_sb_map): Don't assume initializer
	== 0xffffffff.
	* posix/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
	All uses changed.
	(BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
	(bitset_word_t): New type, replacing 'unsigned int' for bitset uses.
	All uses changed.
	(BITSET_WORD_MAX): New macro.
	(bitset_set, bitset_clear, bitset_contain, bitset_empty,
	(bitset_set_all, bitset_copy):  Adjust for bitset_t change.
	(bitset_empty, bitset_copy):
	Prefer sizeof (bitset_t) to multiplying it out ourselves.
	(bitset_not_merge): Remove; unused.
	(bitset_contain): Return bool, not unsigned int with one bit on.
	All callers changed.
	* posix/regexec.c (build_trtable): Don't assume bitset_t has no
	stricter alignment than re_node_set; do this by defining a new
	internal type struct dests_alloc and using it to allocate memory.
2005-09-28 17:33:18 +00:00
Ulrich Drepper 9a5933834b [BZ #652]
2005-01-11  Thorsten Kukuk  <kukuk@suse.de>
	[BZ #652]
	* posix/getconf.c: Add new option -a to print the names of
	the current system configuration variables to stdout.
	Based on patch from Josh Aas <josha@sgi.com>.
2005-09-26 23:02:01 +00:00
Ulrich Drepper 419bcf40d7 [BZ #644]
* sysdeps/posix/getaddrinfo.c (fls): New function.
	(gaih_inet): Don't use ffs, use fls.  Convert address to native byte
	order first.
	* posix/Makefile (tests): Add tst-rfc3484.
	* posix/tst-rfc3484.c: New file.
2005-09-26 21:17:54 +00:00
Ulrich Drepper 997470b3e1 [BZ #281]
* posix/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
	* posix/regcomp.c: Remove unnecessary uses of
	unsigned RE_TRANSLATE_TYPE.
	* posix/regex_internal.h: Likewise.
	* posix/regex_internal.c: Likewise.
	* posix/regexexec.c: Likewise.
	Based on a patch by Stepan Kasal <kasal@ucw.cz>.
2005-09-23 06:11:29 +00:00
Ulrich Drepper 76b864c8e0 (update_cur_sifted_state): Likewise.
(re_search_internal): Likewise.
	(prune_impossible_nodes): Likewise.
	(acquire_init_state_context): Likewise.
	(proceed_next_node): Likewise.
	(set_regs): Likewise.
	(free_fail_stack_return): Likewise.
	(check_subexp_limits): Likewise.
	(sub_epsilon_src_nodes):  Likewise.
	(add_epsilon_src_nodes):  Likewise.
	(merge_state_array): Likewise.
	(update_regs): Likewise.
	(build_trtable): Likewise.
	(sift_states_backward): Mark MCTX parameter as const.
	(build_sifted_states): Likewise.
	(update_cur_sifted_state): Likewise.
	(sift_states_mkref): Likewise.
	(check_dst_limits_calc_pos_1): Likewise.
	* posix/regex_internal.h (re_match_context_t): Make dfa a const
	pointer.
2005-09-07 16:15:23 +00:00
Ulrich Drepper 6efbd82c5c (transit_state_bkref): Make DFA a const pointer.
(get_subexp): Likewise.
	(check_arrival): Likewise.
	(check_arrival_expand_ecl): Mark DFA parameter as const.
	(check_arrival_expand_ecl_sub): Likewise.
	(check_arrival_expand_ecl): Mark eclosure as const.
2005-09-07 15:26:18 +00:00
Ulrich Drepper 1878e9af92 * posix/regexec.c (find_recover_state): Remove unnecessary
initialization.
2005-09-07 07:16:24 +00:00
Ulrich Drepper c42b4152ab * posix/regexec.c (merge_state_with_log): Define dfa as const pointer.
(transit_state_sb): Likewise.
	(transit_state_mb): Likewise.
	(sift_states_iter_mb): Likewise.
	(check_arrival_add_next_nodes): Likewise.
	(check_node_accept_bytes): Change first parameter to pointer-to-const.
	[_LIBC] (re_search_2_stub): Use mempcpy.
2005-09-07 05:41:42 +00:00
Ulrich Drepper 01ed6ceb7c * posix/regex_internal.c (re_string_reconstruct): Avoid calling
mbrtowc for very simple UTF-8 case.

2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>

	* posix/regex_internal.c (build_wcs_upper_buffer): Fix portability
	bugs in int versus size_t comparisons.

2005-09-06  Ulrich Drepper  <drepper@redhat.com>

	* posix/regex_internal.c (re_acquire_state): Make DFA pointer arg
	a pointer-to-const.
	(re_acquire_state_context): Likewise.
	* posix/regex_internal.h: Adjust prototypes.

2005-08-31  Jim Meyering  <jim@meyering.net>

	* posix/regcomp.c (search_duplicated_node): Make first pointer arg
	a pointer-to-const.
	* posix/regex_internal.c (create_ci_newstate, create_cd_newstate,
	register_state): Likewise.
	* posix/regexec.c (search_cur_bkref_entry, check_dst_limits):
	(check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
	(group_nodes_into_DFAstates): Likewise.

	* posix/regexec.c (re_search_internal): Simplify update of
	rm_so and rm_eo by replacing "if (A == B) A += C - B;"
	with the equivalent of "if (A == B) A = C;".

2005-09-06  Ulrich Drepper  <drepper@redhat.com>

	* posix/regcomp.c (re_compile_internal): Change third parameter type
	to size_t.
	(init_dfa): Likewise.  Make sure that arithmetic on pat_len doesn't
	overflow.
	* posix/regex_internal.h (struct re_dfa_t): Change type of nodes_alloc
	and nodes_len to size_t.
	* posix/regex_internal.c (re_dfa_add_node): Use size_t as type for
	new_nodes_alloc.  Check for overflow.

2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>

	* posix/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
	(optimize_subexps, lower_subexp):
	Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
	since the signed shift might overflow.  Use 1u<<31 instead.
	* posix/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
	Likewise.
	* posix/regexec.c (check_dst_limits_calc_pos_1): Likewise.
	(check_subexp_matching_top): Likewise.
	* posix/regcomp.c (optimize_subexps, lower_subexp):
	Use CHAR_BIT rather than 8, for clarity.
	* posix/regexec.c (check_dst_limits_calc_pos_1):
	(check_subexp_matching_top): Likewise.
	* posix/regcomp.c (init_dfa): Make table_size unsigned, so that we
	don't have to worry about portability issues when shifting it left.
	Remove no-longer-needed test for table_size > 0.
	* posix/regcomp.c (parse_sub_exp): Do not shift more bits than there
	are in a word, as the resulting behavior is undefined.
	* posix/regexec.c (check_dst_limits_calc_pos_1): Likewise;
	in one case, a <= should have been an <, and in another case the
	whole test was missing.
	* posix/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
	the standard name CHAR_BIT.
2005-09-07 01:15:33 +00:00
Ulrich Drepper 2d87db5b53 * posix/regex_internal.h (re_sub_match_top_t): Remove unused member
next_last_offset.
	(struct re_dfa_t): Remove unused member states_alloc.
	* posix/regcomp.c (init_dfa): Don't initialize unused members.

2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>

	* posix/regexec.c (set_regs): Don't alloca with an unbounded size.

	alloca modernization/simplification for regex.
	* posix/regex.c: Remove portability cruft for alloca.  This no longer
	needs to be at the start of the file, and can be moved into
	regex_internal.h and simplified.
	* posix/regex_internal.h: Include <alloca.h>.
	(__libc_use_alloca) [!defined _LIBC]: New macro.
	* posix/regexec.c (build_trtable): Remove "#ifdef _LIBC",
	since the code now works outside glibc.

2005-09-06  Ulrich Drepper  <drepper@redhat.com>

	* include/regex.h: Remove use of _RE_ARGS.

2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>

	* posix/regexec.c (find_recover_state): Change "err" to "*err".

2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>

	* posix/regcomp.c (regerror): Pointer args are 'restrict',
	as per POSIX.
	* posix/regex.h (regerror): Likewise.
	* manual/pattern.texi (POSIX Regexp Compilation): Likewise.
	Similarly for regcomp and regexec.  Also, first 2 args of regexec
	and 2nd arg of regerror are const.

	* posix/regex.c: Do not include <sys/types.h>, as POSIX no longer
	requires this.  (The code never needed it.)

2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>

	* posix/regexec.c (sift_states_bkref): re_node_set_insert returns
	int, not reg_errcode_t.

	* posix/regex_internal.c (calc_state_hash): Put 'inline' before type,
	since some broken compilers warn about it otherwise.

	* posix/regcomp.c (create_initial_state): Remove duplicate decl.

2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>

	* posix/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
	C89 or better.  All uses removed.

2005-09-06  Ulrich Drepper  <drepper@redhat.com>

	* posix/regex.c: Prevent using C++ compilers.

2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>

	* posix/regcomp.c (duplicate_node): Return new index, not an error
	code, and let the caller return REG_ESPACE if out of space.  This
	removes an uninitialied-variable warning with GCC 4.0.1, and also
	avoids taking the address of a local variable.  All callers
	changed.

2005-09-06  Ulrich Drepper  <drepper@redhat.com>

	* include/time.h (__strptime_internal): Rename parameter to avoid
	bogus compiler warning.

2005-08-19  Jim Meyering  <jim@meyering.net>

	* posix/regexec.c (proceed_next_node): Redo local variables to
	avoid GCC shadowing warnings.

2005-09-06  Ulrich Drepper  <drepper@redhat.com>

	* posix/regex_internal.c (re_acquire_state): Minor code rearrangement.
	(re_acquire_state_context): Likewise.

2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>

	* posix/regex_internal.c (re_string_realloc_buffers):
	(re_node_set_insert, re_node_set_insert_last, re_dfa_add_node):
	Rename local variables to avoid GCC shadowing warnings.

2005-07-08  Eric Blake  <ebb9@byu.net>
            Paul Eggert  <eggert@cs.ucla.edu>

	* posix/regcomp.c (init_dfa): Store __btowc value in wint_t, not
	wchar_t.  Remove now-unnecessary cast.
	(build_range_exp): Likewise.
2005-09-06 21:15:13 +00:00
Roland McGrath 92d892a899 [BZ #1207]
2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
	[BZ #1207]
	* posix/regex.h: Remove spurious space-before-tab.  From gnulib.
2005-08-18 06:42:25 +00:00
Ulrich Drepper dc4bb1c2be * posix/bits/unistd.h (confstr, getgroups, ttyname_r, gethostname,
getdomainname): Add __NTH.
	* stdlib/bits/stdlib.h (ptsname_r, wctomb, mbstowcs, wcstombs):
	Likewise.
	(realpath): Likewise.  Use __const instead of const.  Add __restrict
	keywords.
	* socket/bits/socket2.h (recvfrom): Add __restrict keyword to __buf.
	* wcsmbs/bits/wchar2.h (wmemcpy, wmemmove, wmempcpy, wmemset,
	wcscpy, wcpcpy, wcsncpy, wcpncpy, wcscat, wcsncat, vswprintf, wcrtomb,
	mbsrtowcs, wcsrtombs, mbsnrtowcs, wcsnrtombs): Add __NTH.
	* string/bits/string3.h (__memset_ichk): Likewise.
	(__memcpy_ichk, __memmove_ichk, __mempcpy_ichk, __strcpy_ichk,
	__stpcpy_ichk, __strncpy_ichk, stpncpy, __strcat_ichk,
	__strncat_ichk): Likewise.  Use __const instead of const.
	(__stpncpy_chk): Use __const instead of const.
	(__stpncpy_alias): Use __REDIRECT_NTH instead of __REDIRECT.

2005-08-08  Ulrich Drepper  <drepper@redhat.com>
	    Jakub Jelinek  <jakub@redhat.com>

	* nscd/mem.c (BLOCK_ALIGN_LOG, BLOCK_ALIGN, BLOCK_ALIGN_M1): Move
	definitions to...
	* nscd/nscd.h (BLOCK_ALIGN_LOG, BLOCK_ALIGN, BLOCK_ALIGN_M1): ...here.
	* nscd/connections.c (usekey): New enum.
	(check_use, verify_persistent_db): New functions.
	(nscd_init): If persistent database is corrupted, unlink it and
	recreate rather than falling back to non-persistent database.
	Call verify_persistent_db.  Avoid overflows in total computation.

2005-08-08  Ulrich Drepper  <drepper@redhat.com>

	* iconvdata/utf-16.c (PREPARE_LOOP): Minor cleanups to make code
	better readable.  Avoid passing var to loop function, it's not
	necessary at all.
2005-08-08 19:04:11 +00:00
Ulrich Drepper 0fee522db1 [BZ #1125]
* posix/Makefile (tests): Add tst-execvp4.
	* posix/tst-execvp4.c: New file.

2005-07-24  Jakub Jelinek  <jakub@redhat.com>

	[BZ #1125]
	* posix/execvp.c (execvp): Change path_malloc to
	char *, free that pointer on failure.

-2005-07-24  Ulrich Drepper  <drepper@redhat.com>
2005-07-24 21:41:49 +00:00
Ulrich Drepper 8a259a2310 * include/stdio.h (__fxprintf): Remove wfmt argument.
* stdio-common/fxprintf.c: Include assert.h, ctype.h and wchar.h.
	(__fxprintf): Remove wfmt argument, create wfmt format string on
	the fly from fmt.
	* argp/argp-fmtstream.c: Adjust all __fxprintf callers.
	* argp/argp-help.c: Likewise.
	* assert/assert-perr.c: Likewise.
	* assert/assert.c: Likewise.
	* gmon/gmon.c: Likewise.
	* inet/rcmd.c: Likewise.
	* malloc/obstack.c: Likewise.
	* misc/error.c: Likewise.
	* misc/getpass.c: Likewise.
	* posix/getopt.c: Likewise.
	* resolv/res_hconf.c: Likewise.
	* stdio-common/perror.c: Likewise.
	* stdio-common/psignal.c: Likewise.
	* stdlib/fmtmsg.c: Likewise.
	* sunrpc/auth_unix.c: Likewise.
	* sunrpc/clnt_perr.c: Likewise.
	* sunrpc/clnt_tcp.c: Likewise.
	* sunrpc/clnt_udp.c: Likewise.
	* sunrpc/clnt_unix.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_rec.c: Likewise.
	* sunrpc/xdr_ref.c: Likewise.
	* sysdeps/generic/wordexp.c: Likewise.
2005-07-20 17:51:14 +00:00
Ulrich Drepper df6f89692f * wcsmbs/bits/wchar2.h: Add definitions for wcrtomb, mbsrtowcs,
wcsrtombs, mbsnrtowcs, and wcsnrtombs.
	* debug/Makefile (routines): Add wcrtomb_chk, mbsrtowcs_chk,
	wcsrtombs_chk, mbsnrtowcs_chk, and wcsnrtombs_chk.
	* debug/Versions: Add __wcrtomb_chk, __mbsrtowcs_chk,
	__wcsrtombs_chk, __mbsnrtowcs_chk, and __wcsnrtombs_chk.
	* debug/tst-chk1.c: Add tests for new functions.
	* debug/mbsnrtowcs_chk.c: New file.
	* debug/mbsrtowcs_chk.c: New file.
	* debug/wcrtomb_chk.c: New file.
	* debug/wcsnrtombs_chk.c: New file.
	* debug/wcsrtombs_chk.c: New file.

	* include/stdio.h: Add declaration for __fxprintf.
2005-07-20 07:43:27 +00:00
Ulrich Drepper 9f3731cf7f * nscd/grpcache.c (cache_addgr): Use correct maximum for group ID
length.  Patch by Ivan Gyurdiev <ivg2@cornell.edu>.

	* debug/confstr_chk.c: New file.
	* debug/getdomainname_chk.c: New file.
	* debug/getgroups_chk.c: New file.
	* debug/gethostname_chk.c: New file.
	* debug/getlogin_r_chk.c: New file.
	* debug/ttyname_r_chk.c: New file.
	* posix/bits/unistd.h: Add definitions for new debug versions.
	* debug/tst-chk1.c: Add tests for new functions.
	* debug/Versions: Export new functions.
	* debug/Makefile (routines): Add new files.

	* stdlib/bits/stdlib.h: Fix typo.

	* manual/Makefile (libc/index.html): Depend on dir-add.texi.
2005-07-18 21:07:28 +00:00
Ulrich Drepper 96c91d1cfe 2005-06-27 Carlos O'Donell <carlos@systemhalted.org>
* posix/regcomp.c (re_compile_internal): __libc_lock_init
	after init_dfa.
2005-07-10 22:02:15 +00:00
Ulrich Drepper ec73fd87da * posix/regex_internal.c (build_wcs_buffer): Use MB_LEN_MAX not
MB_CUR_MAX.
	(build_wcs_upper_buffer): Likewise.
2005-07-05 22:01:42 +00:00
Roland McGrath 654fdda1e4 [BZ #959]
2005-06-01  Roland McGrath  <roland@redhat.com>
	[BZ #959]
	* posix/tst-mmap.c (main): Fill the test file with enough data for the
	page size.
2005-06-03 20:37:25 +00:00
Ulrich Drepper 7b91899345 [BZ #934]
2005-05-06  Jakub Jelinek  <jakub@redhat.com>
	[BZ #934]
	* posix/regex_internal.h: Include bits/libc-lock.h or define dummy
	__libc_lock_* macros if not _LIBC.
	(struct re_dfa_t): Add lock.
	* posix/regcomp.c (re_compile_internal): Add __libc_lock_init.
	* posix/regexec.c (regexec, re_search_stub): Add locking.
2005-05-06 23:34:44 +00:00
Ulrich Drepper e699dda3ae Include bits/libc-lock.h or define dummy __libc_lock_* macros if not _LIBC. (struct re_dfa_t): Add lock. 2005-05-06 23:31:06 +00:00
Roland McGrath fb1887c7f9 [BZ #877]
2005-04-27  Roland McGrath  <roland@redhat.com>
	[BZ #877]
	* posix/unistd.h: Remove __nonnull from acct decl.
2005-04-27 09:49:39 +00:00
Ulrich Drepper 506cbf1f43 * posix/execvp.c (execvp): Use file name including path when
trying to run it with shell.
	* posix/Makefile: Add rules to build and run tst-execvp3.
	* posix/tst-execvp3.c: New file.
2005-04-14 21:20:51 +00:00
Ulrich Drepper 7a409a1a7c (fnmatch): For short patterns or strings attempt to avoid calling mbsrtowcs twice. 2005-03-30 04:17:47 +00:00
Roland McGrath 56abfa6be5 2005-03-29 Thorsten Kukuk <kukuk@suse.de>
* posix/tst-execle1.c (do_test): Fix execle arguments.
	* posix/tst-execle2.c (do_test): Likewise.
2005-03-29 23:27:01 +00:00
Ulrich Drepper 65fb0d2189 * posix/bits/unistd.h (pread) [__USE_FILE_OFFSET64]: Use __off64_t
instead of __off_t for last argument.
	* debug/Makefile (tests): Add tst-lfschk{1,2,3}.
	* debug/tst-lfschk1.c: New test.
	* debug/tst-lfschk2.c: New test.
	* debug/tst-lfschk3.c: New test.

2005-02-09  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/bits/termios.h (CMSPAR): Define.
	* sysdeps/unix/sysv/linux/sparc/bits/termios.h: Add __USE_MISC
	and __USE_XOPEN guards to match linux/bits/termios.h.
	* sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise.
	(CMSPAR): Define.
	* sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
2005-03-20 16:51:05 +00:00
Ulrich Drepper 88764ae26a [BZ #779]
2005-03-10  Jakub Jelinek  <jakub@redhat.com>
	* math/test-misc.c (main): Add some more tests.

2005-03-17  Jakub Jelinek  <jakub@redhat.com>

	* posix/regcomp.c (re_compile_fastmap_iter): Fix check for failed
	__wcrtomb.  Check return values of other __wcrtomb calls.
	* posix/regex_internal.c (build_wcs_buffer, re_string_skip_chars):
	Change mbclen type to size_t.
	(build_wcs_upper_buffer): Change mbclen and mbcdlen type to size_t.
	Handle mb chars whose upper case doesn't have multibyte representation
	in locale's charset.

2005-03-15  Jakub Jelinek  <jakub@redhat.com>

	* malloc/malloc.c (_int_icalloc, _int_icomalloc, iALLOc,
	public_iCALLOc, public_iCALLOc, public_iCOMALLOc): Protect with
	#ifndef _LIBC.

	[BZ #779]
	* malloc/malloc.c (public_mTRIm): Initialize malloc if not yet
	initialized.

2005-03-10  Jakub Jelinek  <jakub@redhat.com>

	* misc/sys/cdefs.h (__always_inline): Define.
	* posix/bits/unistd.h (read, pread, pread64, readlink, getcwd, getwd):
	Use __always_inline instead of __inline.
	* socket/bits/socket2.h (recv, recvfrom): Likewise.
	* libio/bits/stdio2.h (gets, fgets, fgets_unlocked): Likewise.
	* string/bits/string3.h (__memcpy_ichk, __memmove_ichk, __mempcpy_ichk,
	__memset_ichk, __strcpy_ichk, __stpcpy_ichk, __strncpy_ichk,
	__strcat_ichk, __strncat_ichk): Use __always_inline instead of
	__inline__ __attribute__ ((__always_inline__)).

2005-03-09  Jakub Jelinek  <jakub@redhat.com>

	* debug/tst-chk1.c: Include sys/socket.h and sys/un.h.
	(do_test): Add new tests for recv, recvfrom, getcwd, getwd and
	readlink.  Add some more tests for read, pread, pread64, fgets and
	fgets_unlocked.

	* posix/bits/unistd.h (read, pread, pread64, readlink,
	getcwd, getwd): Change macros into extern inline functions.
	(__read_alias, __pread_alias, __pread64_alias, __readlink_alias,
	__getcwd_alias, __getwd_alias): New prototypes.
	* socket/bits/socket2.h (recv, recvfrom): Change macros into
	extern inline functions.
	(__recv_alias, __recvfrom_alias): New prototypes.
	* libio/bits/stdio2.h (gets, fgets, fgets_unlocked): Change macros
	into extern inline functions.
	(__gets_alias, __fgets_alias, __fgets_unlocked_alias): New prototypes.

	* debug/pread_chk.c (__pread_chk): Fix order of arguments passed
	to __pread.
	* debug/pread64_chk.c (__pread64_chk): Fix order of arguments passed
	to __pread64.
2005-03-19 00:28:51 +00:00
Ulrich Drepper 60bd9f7c41 (read, pread, pread64, readlink, getcwd, getwd): Change macros into extern inline functions. (__read_alias, __pread_alias, __pread64_alias, __readlink_alias, __getcwd_alias, __getwd_alias): New prototypes. 2005-03-19 00:06:22 +00:00
Ulrich Drepper 20981676ad * posix/bits/unistd.h (pread): Fix typo in __USE_FILE_OFFSET64 code. 2005-03-07 00:02:03 +00:00
Ulrich Drepper 1c99f950d1 * posix/regexec.c (check_node_accept_bytes): Correct cast to avoid
warning.
	* posix/regex_internal.c (re_string_reconstruct): Add cast to
	avoid warning.
	(build_wcs_upper_buffer): Change type of bug to plain char.
	* locale/weightwc.h (findidx): Add casts to avoid warnings.
	* time/mktime.c (ranged_convert): Initialize tm to make the
	compiler happy.
	* wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Add casts to avoid warnings.
	* wcsmbs/wcsnrtombs.c (__wcsnrtombs): Add casts to avoid warnings.
	* wcsmbs/mbsnrtowcs.c: Add casts to avoid warnings.
	* wcsmbs/wcsrtombs.c (__wcsrtombs): Add casts to avoid warnings.
	* wcsmbs/wcrtomb.c (__wcrtomb): Add casts to avoid warnings.
	* wcsmbs/mbrtowc.c (__mbrtowc): Use unsigned char for outbuf.
	* posix/regex_internal.c [_LIBC] (build_wcs_buffer): Avoid using
	dynamically sized array.
	(build_wcs_upper_buffer): Likewise.
2005-03-06 07:27:56 +00:00
Ulrich Drepper 05510ae659 * posix/bits/unistd.h (pread, pread64): Don't swap function arguments. 2005-03-03 17:08:56 +00:00
Roland McGrath 95ca9dd3fc * posix/bits/unistd.h (read, pread, pread64): Use __bos0 instead
of __bos.
	* socket/bits/socket2.h (recv, recvfrom): Likewise.
2005-03-01 21:33:48 +00:00
Ulrich Drepper 61062f5630 * posix/bits/unistd.h: Avoid calling __*_chk variants if we can
determine the call will never trigger a failure.

	* sysdeps/i386/i686/memset_chk.S: Remove alias and warning.
	* sysdeps/x86_64/memset_chk.S: Likewise.

2005-02-24  Roland McGrath  <roland@redhat.com>

	* debug/Versions (libc: GLIBC_2.4): Remove
	__memset_zero_constant_len_parameter.
	* sysdeps/generic/memset_chk.c: Remove alias and warning.
	* misc/sys/cdefs.h (__warndecl): New macro.
	* debug/warning-nop.c: New file.
	* string/bits/string3.h (memset): Call __warn_memset_zero_len with no
	arguments, instead of calling __memset_zero_constant_len_parameter.
	Use __warndecl for __warn_memset_zero_len.
	* debug/Makefile (routines): Add $(static-only-routines).
	(static-only-routines): New variable.
2005-03-01 00:35:23 +00:00
Ulrich Drepper f9ab9ba9ab * posix/Makefile (tests): Add tst-execvp1, tst-execvp2, tst-execlp1,
tst-execlp2, tst-execv1, tst-execv2, tst-execl1, tst-execl2,
	tst-execve1, tst-execve2, tst-execle1, and tst-execle2.
	* posix/tst-execl1.c: New file.
	* posix/tst-execl2.c: New file.
	* posix/tst-execle1.c: New file.
	* posix/tst-execle2.c: New file.
	* posix/tst-execlp1.c: New file.
	* posix/tst-execlp2.c: New file.
	* posix/tst-execv1.c: New file.
	* posix/tst-execv2.c: New file.
	* posix/tst-execve1.c: New file.
	* posix/tst-execve2.c: New file.
	* posix/tst-execvp1.c: New file.
	* posix/tst-execvp2.c: New file.
2005-02-23 02:46:08 +00:00
Ulrich Drepper 53e5696b30 Test for exec function. 2005-02-23 02:42:55 +00:00
Ulrich Drepper 79164473b2 (execvp): Fix invalid free. 2005-02-22 15:36:13 +00:00
Ulrich Drepper 744eb12b7b * posix/regcomp.c (lower_subexp): Do not optimize empty
subexpressions even with REG_NOSUB.
	* posix/rxspencer/tests: Add a previously failing testcase.
2005-02-22 05:07:20 +00:00
Ulrich Drepper 553cc5f9ad * sysdeps/unix/sysv/linux/libc_fatal.c: Print backtrace and memory
map if requested.
	* debug/chk_fail.c: Request backtrace and memory map dump.

	* Versions.def: Add GLIBC_2.4 for libc.
	* debug/fgets_chk.c: New file.
	* debug/fgets_u_chk.c: New file.
	* debug/getcwd_chk.c: New file.
	* debug/getwd_chk.c: New file.
	* debug/readlink_chk.c: New file.
	* debug/read_chk.c: New file.
	* debug/pread_chk.c: New file.
	* debug/pread64_chk.c: New file.
	* debug/recv_chk.c: New file.
	* debug/recvfrom_chk.c: New file.
	* debug/Versions: Add all new functions with version GLIBC_2.4.
	* debug/Makefile (routines): Add fgets_chk, fgets_u_chk, read_chk,
	pread_chk, pread64_chk, recv_chk, recvfrom_chk, readlink_chk,
	getwd_chk, and getcwd_chk.  Plus appropriate CFLAGS definitions.
	* debug/tst-chk1.c: Add more tests.
	* libio/bits/stdio2.h: Add macros for fgets and fgets_unlocked.
	* include/stdio.h: Declare __fgets_chk and __fgets_unlocked_chk.
	* posix/unistd.h: Include <bits/unistd.h> for fortification.
	* posix/bits/unistd.h: New file.
	* posix/Makefile (headers): Add bits/unistd.h.
	* socket/sys/socket.h: Include <bits/socket2.h> for fortification.
	* socket/bits/socket2.h: New file.
	* socket/Makefile (headers): Add bits/socket2.h.

	* string/bits/string3.h: Extend memset macro to check for zero 3rd
	parameter and use __memset_zero_constant_len_parameter in that case.
	* sysdeps/generic/memset_chk.c: Add
	__memset_zero_constant_len_parameter alias and linker warning.
	* debug/Versions: Add __memset_zero_constant_len_parameter to libc
	with version GLIBC_2.4.

	* sysdeps/generic/bits/types.h: Don't unnecessarily use __extension__
	in __STD_TYPE definition.

2005-02-21  Jakub Jelinek  <jakub@redhat.com>

	* malloc/malloc.c (malloc_printerr): If MALLOC_CHECK_={5,7}, print
	the error message rather than program name.

2005-02-21  Ulrich Drepper  <drepper@redhat.com>
2005-02-21 23:14:10 +00:00
Ulrich Drepper f2b0dc4404 symlink and readlink are unconditionally available in the 2001 spec. 2005-02-21 10:22:29 +00:00
Roland McGrath 9cfe5381a1 [BZ #284, BZ #721]
* intl/dcigettext.c (_nl_find_msg): Add a cast.
	* nis/nis_clone_dir.c (nis_clone_directory): Use char * for ADDR.
	* nis/nis_clone_obj.c (nis_clone_object): Likewise.
	* nis/nis_clone_res.c (nis_clone_result): Likewise.

	* resolv/nss_dns/dns-network.c (getanswer_r): Use const unsigned char *
	for END_OF_MESSAGE and CP.

	* resolv/res_send.c (send_dg): Add else branch for case impossible
	unless `poll' is buggy.

	* crypt/crypt_util.c (__setkey_r): Add a cast.

	* locale/programs/linereader.c (get_toplvl_escape): Use size_t for
	NBYTES, and unsigned char * for BYTES.

	* locale/programs/charmap.c (charmap_new_char): Use size_t and
	unsighed char * for NBYTES, BYTES parameters.

	* sysdeps/generic/dl-hash.h (_dl_elf_hash): Take const char * argument
	and cast it.
	* sysdeps/i386/i686/dl-hash.h (_dl_elf_hash): Likewise.

	* sunrpc/create_xid.c (_create_xid): Don't use unsigned long for RES.

	* sunrpc/svcauth_des.c (_svcauth_des): Fix cast type.

	* sunrpc/auth_des.c (authdes_create): Don't use u_char for PKEY_DATA.
	(authdes_marshal): Don't use unsigned int for LEN.
	* sunrpc/xdr.c (xdr_hyper): Don't use unsigned long for T2.
	(xdr_u_hyper): Likewise.
	(xdr_u_short): Don't use u_long for L.
	* sunrpc/xdr_intXX_t.c (xdr_int64_t): Don't use uint32_t for T2.

	* inet/rexec.c (rexec_af): Use socklen_t.
	* sunrpc/key_call.c (getkeyserv_handle): Likewise.
	* sunrpc/rtime.c (rtime): Likewise.
	* resolv/res_send.c (send_vc, send_dg): Likewise.
	* nis/nis_callback.c (__nis_create_callback): Likewise.

	* sysdeps/generic/libc-start.c: Use unsigned int for nthreads ptr.

	* sysdeps/posix/getaddrinfo.c (gaih_inet): Fix type of ADDR local.

	* libio/libio.h (_IO_BE): Add parenthesis around EXPR.

	* intl/dcigettext.c (INTVARDEF, INTUSE): Macros removed.
	(_nl_default_dirname): Use libc_hidden_data_def instead of INTVARDEF.
	(libc_freeres_fn, DCIGETTEXT): Don't use INTUSE.
	* intl/bindtextdom.c (INTUSE): Macro removed.
	(_nl_default_dirname): Use libc_hidden_proto.
	(set_binding_values): Don't use INTUSE.
	* include/libintl.h (_libc_intl_domainname_internal): Decl removed.
	(_libc_intl_domainname): Use libc_hidden_proto.
	* posix/regex_internal.h (gettext): Remove INTUSE on it.
	* locale/SYS_libc.c (_libc_intl_domainname): Use libc_hidden_data_def
	rather than INTDEF.
	* include/libintl.h (_): Don't use *_internal name.

	* ctype/ctype-extn.c (__ctype_tolower, __ctype_toupper): Use int32_t,
	not uint32_t.
	* locale/lc-ctype.c (_nl_postload_ctype): Likewise for assignments.

	* iconv/gconv_open.c (__gconv_open): Remove useless cast.

	[BZ #721]
	* sysdeps/i386/dl-machine.h (ELF_MACHINE_NO_RELA): Define this outside
	of [RESOLVE_MAP].
	* sysdeps/sh/dl-machine.h (ELF_MACHINE_NO_REL): Likewise.
	* sysdeps/powerpc/powerpc32/dl-machine.h
	(elf_machine_rel, elf_machine_rel_relative): Removed.
	* sysdeps/powerpc/powerpc64/dl-machine.h
	(elf_machine_rel, elf_machine_rel_relative): Removed.

2005-02-03  Alexandre Oliva  <aoliva@redhat.com>

	[BZ #721]
	* elf/dynamic-link.h: Don't declare nested auto functions that are
	not going to be defined.

2004-07-23  Jakub Jelinek  <jakub@redhat.com>

	[BZ #284]
	* include/features.h (_POSIX_SOURCE, _POSIX_C_SOURCE): Define
	if _XOPEN_SOURCE >= 500 even if __STRICT_ANSI__ is defined.

2005-02-16  Roland McGrath  <roland@redhat.com>
2005-02-17 01:19:55 +00:00
Ulrich Drepper 963d8d782f [BZ #558]
Update.
2005-01-27  Paolo Bonzini  <bonzini@gnu.org>

	[BZ #558]
	* posix/regcomp.c (calc_inveclosure): Return reg_errcode_t.
	Initialize the node sets in dfa->inveclosures.
	(analyze): Initialize inveclosures only if it is needed.
	Check errors from calc_inveclosure.
	* posix/regex_internal.c (re_dfa_add_node): Do not initialize
	the inveclosure node set.
	* posix/regexec.c (re_search_internal): If nmatch includes unused
	subexpressions, reset them to { rm_so: -1, rm_eo: -1 } here.

	* posix/regcomp.c (parse_bracket_exp) [!RE_ENABLE_I18N]:
	Do build a SIMPLE_BRACKET token.

	* posix/regexec.c (transit_state_mb): Do not examine nodes
	where ACCEPT_MB is not set.
2005-01-27 19:08:10 +00:00
Ulrich Drepper 717ecb1fe5 Update.
2005-01-27  Jakub Jelinek  <jakub@redhat.com>

	* stdlib/tst-fmtmsg.c: Include stdlib.h.
	* stdio-common/tst-fmemopen2.c: Include string.h.
	* posix/execvp.c: Include stdbool.h.
2005-01-27 18:49:47 +00:00
Ulrich Drepper 02f3550c8b [BZ #605, BZ #611]
Update.
2004-12-13  Paolo Bonzini  <bonzini@gnu.org>

	Separate parsing and creation of the NFA.  Avoided recursion on
	the (very unbalanced) parse tree.
	[BZ #611]
	* posix/regcomp.c (struct subexp_optimize, analyze_tree, calc_epsdest,
	re_dfa_add_tree_node, mark_opt_subexp_iter): Removed.
	(optimize_subexps, duplicate_tree, calc_first, calc_next,
	mark_opt_subexp): Rewritten.
	(preorder, postorder, lower_subexps, lower_subexp, link_nfa_nodes,
	create_token_tree, free_tree, free_token): New.
	(analyze): Accept a regex_t *.  Invoke the passes via the preorder and
	postorder generic visitors.  Do not initialize the fields in the
	re_dfa_t that represent the transitions.
	(free_dfa_content): Use free_token.
	(re_compile_internal): Analyze before UTF-8 optimizations.  Do not
	include optimization of subexpressions.
	(create_initial_state): Fetch the DFA node index from the first node's
	bin_tree_t *.
	(optimize_utf8): Abort on unexpected nodes, including OP_DUP_QUESTION.
	Return on COMPLEX_BRACKET.
	(duplicate_node_closure): Fix comment.
	(duplicate_node): Do not initialize the fields in the
	re_dfa_t that represent the transitions.
	(calc_eclosure, calc_inveclosure): Do not handle OP_DELETED_SUBEXP.
	(create_tree): Remove final argument.  All callers adjusted.  Rewritten
	to use create_token_tree.
	(parse_reg_exp, parse_branch, parse_expression, parse_bracket_exp,
	build_charclass_op): Use create_tree or create_token_tree instead
	of re_dfa_add_tree_node.
	(parse_dup_op): Likewise.  Also free the tree using free_tree for
	"<re>{0}", and lower OP_DUP_QUESTION to OP_ALT: "a?" is equivalent
	to "a|".  Adjust invocation of mark_opt_subexp.
	(parse_sub_exp): Create a single SUBEXP node.
	* posix/regex_internal.c (re_dfa_add_node): Remove last parameter,
	always perform as if it was 1.  Do not initialize OPT_SUBEXP and
	DUPLICATED, and initialize the DFA fields representing the transitions.
	* posix/regex_internal.h (re_dfa_add_node): Adjust prototype.
	(re_token_type_t): Move OP_DUP_PLUS and OP_DUP_QUESTION to the tokens
	section.  Add a tree-only code SUBEXP.  Remove OP_DELETED_SUBEXP.
	(bin_tree_t): Include a full re_token_t for TOKEN.  Turn FIRST and
	NEXT into pointers to trees.  Remove ECLOSURE.

2004-12-28  Paolo Bonzini  <bonzini@gnu.org >

	[BZ #605]
	* posix/regcomp.c (parse_bracket_exp): Do not modify DFA nodes
	that were already created.
	* posix/regex_internal.c (re_dfa_add_node): Set accept_mb field
	in the token if needed.
	(create_ci_newstate, create_cd_newstate): Set accept_mb field
	from the tokens' field.
	* posix/regex_internal.h (re_token_t): Add accept_mb field.
	(ACCEPT_MB_NODE): Removed.
	* posix/regexec.c (proceed_next_node, transit_states_mb,
	build_sifted_states, check_arrival_add_next_nodes): Use
	accept_mb instead of ACCEPT_MB_NODE.
2005-01-26 22:42:49 +00:00
Ulrich Drepper 24992143d8 [BZ #693]
Update.
2005-01-26  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/i386/sysdep.h
	(SYSCALL_ERROR_HANDLER_TLS_STORE): Remove unnecessary 0 imm.

	[BZ #693]
	* posix/regex_internal.h (DUMMY_CONSTRAINT): Rename to...
	(WORD_DELIM_CONSTRAINT): ...this.
	(NOT_WORD_DELIM_CONSTRAINT): Define.
	(re_context_type): Add INSIDE_NOTWORD and NOT_WORD_DELIM,
	change WORD_DELIM to use WORD_DELIM_CONSTRAINT.
	* posix/regcomp.c (peek_token): For \B create NOT_WORD_DELIM
	anchor instead of INSIDE_WORD.
	(parse_expression): Handle NOT_WORD_DELIM constraint.
	* posix/bug-regex19.c (tests): Adjust tests that relied on \B
	being inside word instead of not word delim.
	* posix/tst-rxspencer.c (mb_frob_pattern): Don't frob escaped
	characters.
	* posix/rxspencer/tests: Add some new tests.
2005-01-26 19:56:03 +00:00
Ulrich Drepper 550aafb9c1 (DUMMY_CONSTRAINT): Rename to... (WORD_DELIM_CONSTRAINT): ...this. (NOT_WORD_DELIM_CONSTRAINT): Define. (re_context_type): Add INSIDE_NOTWORD and NOT_WORD_DELIM, change WORD_DELIM to use WORD_DELIM_CONSTRAINT. 2005-01-26 19:43:44 +00:00
Ulrich Drepper 70fb71fd6a Update.
2005-01-22  Ulrich Drepper  <drepper@redhat.com>

	* posix/Makefile: Use CFLAGS-*.os instead of CFLAGS-*.c for frame
	pointer option.

	* stdlib/Makefile (CFLAGS-system.os): Use this instead of
	CFLAGS-system.c for frame pointer option.
2005-01-23 04:42:14 +00:00
Ulrich Drepper 57b47af94b Update.
2005-01-20  Ulrich Drepper  <drepper@redhat.com>

	* posix/execl.c: Do not allocate potentially large buffers on the
	stack.
	* posix/execle.c: Likewise.
	* posix/execlp.c: Likewise.
	* posix/execlp.c: Likewise.
	(script_execute): Removed.
	(allocate_scripts_argv): New function.  Called at most once to
	allocate memory, not every time a script is run.  Adjust caller.

	* sysdeps/generic/wordexp.c (exec_comm): Add a few
	TEMP_FAILURE_RETRY.  Reorganize code to avoid multiple calls to
	exec_comm_child.
	(exec_comm_child): Can now be inlined.

	* posix/Makefile: Add -fomit-frame-pointer for a few more files.
	* stdlib/Makefile: Likewise.
2005-01-20 20:10:02 +00:00
Ulrich Drepper ea16166114 Update.
2005-01-14  Ulrich Drepper  <drepper@redhat.com>

	* posix/regcomp.c [!_LIBC] (init_dfa): Fix determining of relevant
	LC_* variable.  Patch by Aharon Robbins <arnold@skeeve.com>.

	* stdlib/fmtmsg.c (internal_addseverity): Remove incorrect free call.
	* stdlib/tst-fmtmsg.c (main): Add another addseverity test.
2005-01-14 09:06:25 +00:00