Commit Graph

5 Commits

Author SHA1 Message Date
Noah Goldstein
464d189b96 stdlib: Remove attr_write from mbstows if dst is NULL [BZ: 29265]
mbstows is defined if dst is NULL and is defined to special cased if
dst is NULL so the fortify objsize check if incorrect in that case.

Tested on x86-64 linux.
Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
2022-06-22 11:12:33 -07:00
Ulrich Drepper
f1fa8b68f3 Update.
1998-04-15 16:41  Ulrich Drepper  <drepper@cygnus.com>

	Don't name internal representation since it might be different from
	the external form (namely on little endian machines).
	* iconv/gconv_builtin.h: Add UCS4 support.  Change references to
	UCS4 into references to INTERNAL.
	* iconv/gconv_simple.c: Implement UCS4<->INTERNAL converters.
	Add endianess support to UCS functions.  Change references to
	UCS4 into references to INTERNAL.
	* iconv/gconv_int.h: Change references to UCS4 into references to
	INTERNAL.
	* iconv/iconv_prog.c: Don't mention INTERNAL in --list output.
	* iconvdata/gconv-modules: Change accordingly.
	* wcsmbs/wcsmbsload.c: Change names to use INTERNAL.

	* iconv/gconv_simple.c: Adjust input buffer pointer for output buffer
	overflow.
	* iconvdata/8bit-gap.c: Likewise.
	* iconvdata/8bit-generic.c: Likewise.
	* iconvdata/big5.c: Likewise.
	* iconvdata/euccn.c: Likewise.
	* iconvdata/eucjp.c: Likewise.
	* iconvdata/euckr.c: Likewise.
	* iconvdata/euctw.c: Likewise.
	* iconvdata/iso646.c: Likewise.
	* iconvdata/iso6937.c: Likewise.
	* iconvdata/iso8859-1.c: Likewise.
	* iconvdata/johab.c: Likewise.
	* iconvdata/sjis.c: Likewise.
	* iconvdata/t61.c: Likewise.
	* iconvdata/uhc.c: Likewise.

	* iconvdata/8bit-gap.c: Correct access to to_ucs4 array.
	* iconvdata/8bit-generic.c: Likewise.

	* iconvdata/TESTS: Add more tests.

	* sysdeps/i386/bits/byteswap.h: Change to use "=r" when ror is used.

1998-04-15 11:47  Ulrich Drepper  <drepper@cygnus.com>

	* iconvdata/Makefile: Better rules to run tests.

	* iconvdata/testdata/ISO-8859-1..UTF8: New file.
	* iconvdata/testdata/ISO-8859-10: Likewise.
	* iconvdata/testdata/ISO-8859-10..UCS2: Likewise.
	* iconvdata/testdata/ISO-8859-2: Likewise.
	* iconvdata/testdata/ISO-8859-2..UCS4: Likewise.
	* iconvdata/testdata/ISO-8859-2..UTF8: Likewise.
	* iconvdata/testdata/ISO-8859-3: Likewise.
	* iconvdata/testdata/ISO-8859-4: Likewise.
	* iconvdata/testdata/ISO-8859-5: Likewise.
	* iconvdata/testdata/ISO-8859-6: Likewise.
	* iconvdata/testdata/ISO-8859-7: Likewise.
	* iconvdata/testdata/ISO-8859-8: Likewise.
	* iconvdata/testdata/ISO-8859-9: Likewise.

	* iconvdata/run-iconv-test.sh: Handle $from..$t file to compare
	intermediate result (if available).

	* iconvdata/Makefile: Add rules to run run-iconv-test.sh.
	(distribute): Add run-iconv-test.sh and testdata/*.

	* stdlib/testmb.c (main): Simplify mbc array handling.

	* iconvdata/testdata/ISO-8859-1: New file.
1998-04-15 17:02:23 +00:00
Ulrich Drepper
11336c165c update from main archive 961008
Wed Oct  9 00:30:33 1996  Ulrich Drepper  <drepper@cygnus.com>

	* inet/getnetgrent_r.c: Correct netgroup implementation.  A
	specification of a netgroup can also name another netgroup.
	* nss/nss_files/files-netgrp.c: Likewise.
	* inet/netgroup.h: Add fields to hold additional information.

Tue Oct  8 21:51:14 1996  Arnold D. Robbins  <arnold@skeeve.atl.ga.us>

	* posix/getopt.c: Implement POSIX -W option handling.  When the
	option string contains "W;" -W foo is handled like --foo.

Tue Oct  8 12:27:26 1996  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/unix/sysv/linux/i386/clone.S: Define _ERRNO_H before
	inclusing <errnos.h> so we really get error symbols defined.
	* sysdeps/unix/sysv/linux/m68k/clone.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.

	* sunrpc/auth_unix.c (authunix_create_default): Don't use fixed
	size array for getgroups call.  Instead get maximal number via
	sysconf.  But discard list to NGRPS elements before calling XDR
	function since Sun's code cannot handle longer lists.
	Based on a patch by Thorsten Kukuk <kukuk@weber.uni-paderborn.de>.

	* sysdeps/stub/e_j0l.c: Define y0l as well.
	* sysdeps/stub/e_j1l.c: Define y1l as well.
	* sysdeps/stub/e_jnl.c: Define ynl as well.

	* posix/unistd.h: Correct prototype for execlp.

	* sysdeps/unix/sysv/linux/posix_opt.h: Define _POSIX_NO_TRUNC.

Mon Oct  7 22:18:03 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* Makeconfig (sysdep-library-path): New variable.
	(built-program-cmd): Use it here to properly build a colon
	separated library path.

Mon Oct  7 22:11:55 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* crypt/md5-crypt.c (md5_crypt_r): Add missing parens around &
	within comparison.  Fix comments.
	(md5_crypt): Fix comment.

Tue Oct  8 05:10:49 1996  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/unix/sysv/linux/errnos.h: Only include <linux/errnos.h>
	when _ERRNO_H is defined.
	[!_ERRNO_H && __need_Emath]: Define value for EDOM and ERANGE.
	Should there ever be a Linux port where the numeric values are
	not 33 and 34 this file must change.

Mon Oct  7 13:54:04 1996  Ulrich Drepper  <drepper@cygnus.com>

	* libio/iofgets.c (_IO_fgets): Use _IO_flockfile instead of
	__flockfile.

Mon Oct  7 11:01:45 1996  Andreas Jaeger  <aj@arthur.pfalz.de>

	* string/tst-strlen.c (main): Provide prototype.
	* malloc/mallocbug.c: Likewise.
	* io/test-utime.c: Likewise.

	* sysdeps/generic/crypt-entry.c: Correct typo.

Mon Oct  7 13:42:20 1996  Ulrich Drepper  <drepper@cygnus.com>

	* elf/dl-open.c (_dl_open): Check against _dl_sysdep_start to
	test for libc.a.  Checking _DYNAMIC is of no worth here.
	Suggested by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>.

	* nss/nss_files/files-parse.c: Define LOOKUP_NAME even if
 	EXTERN_PARSER is defined.

Sat Oct  5 17:05:36 1996  Andreas Jaeger  <aj@arthur.pfalz.de>

	* Rules (dep-dummy-lib): Correct prototype for __dummy__.

	* crypt/md5-crypt.c: Fix typos in comments.

	* gmon/gmon.c: Provide prototypes.
	* db/makedb.c: Likewise.
	* locale/programs/xmalloc.c: Likewise.
	* stdio-common/bug11.c (main): Likewise.
	* stdio-common/bug7.c (main): Likewise.
	* stdio-common/bug8.c (main): Likewise.
	* stdio-common/bug9.c (main): Likewise.
	* stdio-common/scanf1.c (main): Likewise.
	* stdio-common/scanf2.c (main): Likewise.
	* stdio-common/scanf5.c (main): Likewise.
	* stdio-common/scanf6.c (main): Likewise.
	* stdio-common/scanf7.c (main): Likewise.
	* stdio-common/scanf8.c (main): Likewise.
	* stdio-common/temptest.c (main): Likewise.
	* stdio-common/test-fwrite.c (main): Likewise.
	* stdio-common/tst-printf.c: Likewise.
	* stdio-common/tstdiomisc.c: Likewise.
	* stdio-common/tstgetln.c (main): Likewise.
	* stdlib/testmb.c (main): Likewise.

	* stdio-common/scanf4.c (main): Correct prototype, remove unused
	variable n.

	* stdio-common/scanf3.c (main): Correct prototype, change
	declaration of s to reduce warnings.
	* stdio-common/bug10.c (main): Likewise.

	* stdio-common/tfformat.c: Provide prototype, remove unused
	reference to dump_stats, add braces in sprint_doubles.
	* stdio-common/tiformat.c: Likewise.

	* stdio-common/test_rdwr.c (main): Parameter `where' is long in
	printf call.

Mon Oct  7 14:04:26 1996  NIIBE Yutaka  <gniibe@mri.co.jp>

	* sysdeps/unix/sysv/linux/sys/soundcard.h: Fix typo.

	* shadow/putspent.c: Don't write colon after flag field.

	* sysdeps/unix/sysv/linux/net/if_ppp.h: New file.  Wrapper around
	kernel header.
	* sysdeps/unix/sysv/linux/net/ppp-comp.h: Likewise.
	* sysdeps/unix/sysv/linux/net/ppp_defs.h: Likewise.
	* sysdeps/unix/sysv/linux/Dist: Mention new files.

Mon Oct  7 00:58:19 1996  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/i386/i586/strchr.S: Correct handling of first bytes to
	get pointer aligned.  Reported by Matthias Urlichs <smurf@noris.de>.

	* sysdeps/posix/euidaccess.c [_LIBC]: Avoid calling get?id functions
	by using __libc_enable_secure variable.

	* sysdeps/libm-i387/s_copysignl.S: Correct loading of return value.
1996-10-08 23:39:20 +00:00
Roland McGrath
b20e47cb14 Tue Mar 19 14:18:42 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* sysdeps/unix/bsd/pause.c: Moved to sysdeps/unix/common/pause.c.

Mon Mar  4 20:17:28 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* sysdeps/unix/sysv/linux/adjtime.c: Use INT_MAX instead of LONG_MAX.

	* sysdeps/unix/sysv/Makefile (sysdep_routines): Don't add s_getdents.

	* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Don't add mount,
	umount.

	* sysdeps/alpha/__math.h (atan, cabs): New functions.

	* sysdeps/unix/sysv/linux/alpha/sigsuspend.S: new file (syscall
 	expects set-value, not pointer to it).

Sun Feb 25 22:36:10 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* sysdeps/unix/sysv/linux/alpha/profil-counter.h: New file.

	* gmon/gmon.c (__bb_head): new variable.
	(write_hist, write_call_graph, write_bb_counts): new functions.
	(_mcleanup): modified to call above functions instead of directly
 	writing out gmon.out.
	* gmon/sys/gmon.h (struct __bb): New type.
	(struct gmonhdr): Type removed.
	(struct gmonparam): New member `log_hashfraction'.
	(GMONVERSION): Macro removed.

	* gmon/sys/gmon_out.h, gmon/bb_exit_func.c,
 	sysdeps/generic/bb_init_func.c, sysdeps/alpha/bb_init_func.S: new
 	files.
	* gmon/Makefile (headers): Add sys/gmon_out.h.
	(routines): Add bb_init_func, bb_exit_func.

	* gmon/mcount.c: Avoid integer division.

Wed Feb 21 23:56:41 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* sysdeps/alpha/setjmp.S: switched order in which sp and fp are
 	passed to match what __sigsetjmp_aux() expects.

Tue Feb 20 11:33:46 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* sysdeps/unix/sysv/linux/alpha/syscalls.list (select, bind,
 	connect, getpeername, getsockname, listen, recv, recvfrom,
 	recvmsg, send, sendmsg, sendto, setsockopt, shutdown, socketpair):
 	added to override same-name assembly file in the parent directory.

	* stdlib/stdlib.h: add include of sys/types.h in front of random
 	etc declarations to ensure int32_t is declared.

	* stdlib/random.c, stdlib/random_r.c: replaced "long int" by int32_t
	where 32 bit integers are required.  Also change LONG_MAX into
	0x7fffffff since the intent is to turn off the sign bit in a
	32 bit integer.

	* time/offtime.c (__offtime): Use Paul Eggert's code to deal
	with very large values for "days" (e.g., 64 bit values).

Mon Feb 19 22:22:12 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* stdlib/stdlib.h (__random, __random_r, random_r, struct
 	random_data): use int32_t instead of `long int'.

Sat Feb 17 11:29:29 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* sysdeps/unix/sysv/linux/alpha/ioperm.c: new file.

	* sysdeps/alpha/ffs.S: new file.

	* sysdeps/alpha/fabs.c: File removed.

	* time/tzfile.c (__tzfile_read): counter variable is i, *not*
	num_transitions!

	* time/offtime.c: make capable of dealing with very large (64 bit)
 	time_t values.  Use old algorithm until a year is reached that
	is an integer multiple of 400, then use DAYS_PER_400_YEARS to
	do the remainder in a single division.

	* sysdeps/generic/ffs.c (ffs): fix variable declarations to
	be unsigned int, not unsigned long.

	* string/test-ffs.c (main): add test case with all upper bits
	set.

	* stdlib/tst-strtol.c: add tests cases for machines where
	sizeof(long)==8.

	* stdlib/testrand.c (main): disallow rand() to return negative
 	integers.

	* stdlib/testmb.c (main): fix format to use %lx instead of %x.

	* stdlib/stdlib.h: on 64 bit machines, declare
	struct random_data, __random(),  __random_r, and random_r to
	return "int" instead of "long int".

	* stdlib/random_r.c: 64 bit machines use "int" instead of "long
 	int".  Similarly, use INT_MAX instead of LONG_MAX.

	* stdlib/random.c: on 64 bit machines, randtbl[] and __random[]
 	need to operate on "int" instead of "long int".

	* locale/locfile-hash.c (compute_hashval): make shifted constant
	a long to avoid loosing bits on 64 bit machines.

	* dirent/tst-seekdir.c (main): fix confusing comment; print
	a line to mark point where directory is rewound.

Fri Feb 16 15:01:49 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* time/strftime.c (strftime): any hour > 11 is PM (not > 12!).

Wed Feb 14 00:21:17 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* sysdeps/unix/sysv/linux/alpha/Makefile,
	sysdeps/unix/sysv/linux/alpha/brk.S,
	sysdeps/unix/sysv/linux/alpha/fpu_control.c,
	sysdeps/unix/sysv/linux/alpha/fpu_control.h,
	sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S,
	sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S,
	sysdeps/unix/sysv/linux/alpha/pipe.S,
	sysdeps/unix/sysv/linux/alpha/setfpucw.c,
	sysdeps/unix/sysv/linux/alpha/sigprocmask.c,
	sysdeps/unix/sysv/linux/alpha/speed.c,
	sysdeps/unix/sysv/linux/alpha/start.S,
	sysdeps/unix/sysv/linux/alpha/syscall.S,
	sysdeps/unix/sysv/linux/alpha/syscalls.list,
	sysdeps/unix/sysv/linux/alpha/alpha/regdef.h,
	sysdeps/unix/sysv/linux/alpha/sysdep.S,
	sysdeps/unix/sysv/linux/alpha/sysdep.h: New files.

	* sysdeps/alpha/setjmp_aux.c (__sigsetjmp_aux): restore return
 	address register before returning (gcc 2.7.1 doesn't do it,
 	presumably because $26 is declared as a global variable).

	* sysdeps/unix/sysv/linux/sys/mman.h: msync was missing "flags"
	argument.

	* sysdeps/unix/alarm.c (alarm): do roundup using test & increment
	instead of multiplication.

	* sysdeps/posix/sleep.c (sleep): initialize sa_mask to mask of
	currently blocked signals instead of the empty mask to ensure
	that execution of alarm handler occurs with none of the currently
	blocked signals enabled.

	* sysdeps/unix/alpha/sysdep.h: new file (adapted from OSF/1 version).

	* sysdeps/unix/bsd/osf/alpha/sysdep.h: include
 	sysdeps/unix/alpha/sysdep.h and removed definitions now in that file.

	* sysdeps/alpha/divrem.S, sysdeps/alpha/htonl.S,
	sysdeps/alpha/htons.S, sysdeps/alpha/machine-gmon.h,
	sysdeps/alpha/_mcount.S, sysdeps/alpha/ntohl.s, sysdeps/alpha/ntohs.s,
	sysdeps/alpha/strlen.S: New files.

	* sysdeps/alpha/divl.S, sysdeps/alpha/divlu.S, sysdeps/alpha/divq.S,
	sysdeps/alpha/divqu.S, sysdeps/alpha/divrem.m4,
	sysdeps/alpha/macros.m4, sysdeps/alpha/reml.S, sysdeps/alpha/remlu.S,
	sysdeps/alpha/remq.S, sysdeps/alpha/remqu.S, sysdeps/alpha/strlen.c:
 	Removed.

	* sysdeps/generic/sbrk.c (__sbrk): argument is of type ptrdiff_t, not
	int.

	* sysdeps/alpha/__longjmp.c (__longjmp): moved dummy while loop
	to end of function to avoid a jump across NOPs.

	* sysdeps/alpha/Makefile (sysdep_routines): Removed all rules
 	pertaining to integer division/remainder routines since new code
 	doesn't require them.

	* sunrpc/xdr_mem.c, sunrpc/xdr_stdio.c: Use 4 instead of sizeof(long)
	where 32 bit quantities are consumed/stored.  Various other minor
	64-bit cleanups (casting).

	* sunrpc/xdr.c (xdr_int): test for sizeof(int)==4 to determine
 	whether xdr_long or xdr_short should be used to encode an int.
  	Notice that an xdr_long is 4 bytes independent of the architecture
	(otherwise no Alpha could interoperate with existing NFS servers,
 	for example).  Ditto for enums.

	* sunrpc/svc_udp.c (svcudp_recv): changed test from 4*sizeof(u_long)
	to 16 since it really wants 16 bytes.

	* sunrpc/svc.c (maskp): changed from u_long* to u_int32*.

	* sunrpc/rpc_cmsg.c (xdr_callmsg), sunrpc/svc_authux.c: increment
	"buf" pointer by casting it to a char* first since a long* may be 8
 	bytes or more and oa->oa_length may be any multiple of 4.

	* sunrpc/rpc/xdr.h (IXDR_GET_LONG, IXDR_PUT_LONG): change casts to
 	u_int32_t (instead of u_long).

	* sunrpc/clnt_udp.c (clntudp_call): replaced sizeof(u_long) by 4
	since it really is testing for 32 bits.  Fixed casts to use
	u_int32 instead of u_long.
	* sunrpc/xdr_rec.c: Likewise.

	* sunrpc/clnt_tcp.c (clnttcp_call): replaced u_long by u_int32.
	* sunrpc/rpc/auth.h: Likewise.

	* limits.h (LONG_MAX, LONG_MIN, ULONG_MAX): use 64 bit values
	for Alpha.

Tue Mar 19 13:27:49 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>

	* sysdeps/i386/fpu/__math.h: New file.
	Contributed by John C. Bowman <bowman@hagar.ph.utexas.edu>.

Sun Mar 17 00:28:16 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/posix/clock.c: Don't multiply the return value by
	CLOCKS_PER_SEC or CLK_TCK.

	* sysdeps/mach/hurd/getcwd.c: Fail with ENOENT if a parent directory
	scan finds no match.

	* posix/unistd.h (setpgrp): Declare no-arg version unless __FAVOR_BSD.
	* misc/bsd-compat.c (setpgrp): New function, two arg version.
	* sysdeps/stub/setpgid.c: Remove setpgrp alias.
	* sysdeps/mach/hurd/setpgid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
	* sysdeps/unix/common/syscalls.list (setpgid): Remove setpgrp alias.
	* sysdeps/unix/sysv/irix4/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/setpgrp.c: Obsolete file removed.
	* posix/setpgrp.c (setpgrp): New file.
	* posix/Makefile (routines): Add setpgrp.

Tue Feb  6 12:46:29 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* libc-symbols.h (weak_alias, weak_symbol): added definitions
	for ECOFF (HAVE_ECOFF).
1996-03-19 20:21:54 +00:00
Roland McGrath
28f540f45b initial import 1995-02-18 01:27:10 +00:00