Commit Graph

114 Commits

Author SHA1 Message Date
Ulrich Drepper
afd4eb3759 update from main archive 961116
Sun Nov 17 03:13:57 1996  Ulrich Drepper  <drepper@cygnus.com>

	* db/makedb.c: Update and reformat copyright.
	* elf/Makefile: Likewise.
	* elf/dl-close.c: Likewise.
	* elf/dl-debug.c: Likewise.
	* elf/dl-deps.c: Likewise.
	* elf/dl-error.c: Likewise.
	* elf/dl-fini.c: Likewise.
	* elf/dl-init.c: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-minimal.c: Likewise.
	* elf/dl-object.c: Likewise.
	* elf/dl-open.c: Likewise.
	* elf/dl-reloc.c: Likewise.
	* elf/dl-runtime.c: Likewise.
	* elf/dl-support.c: Likewise.
	* elf/dl-symbol.c: Likewise.
	* elf/dladdr.c: Likewise.
	* elf/dlclose.c: Likewise.
	* elf/dlerror.c: Likewise.
	* elf/dlopen.c: Likewise.
	* elf/dlsym.c: Likewise.
	* elf/do-rel.h: Likewise.
	* elf/dynamic-link.h: Likewise.
	* elf/eval.c: Likewise.
	* elf/rtld.c: Likewise.
	* inet/ether_hton.c: Likewise.
	* inet/ether_ntoh.c: Likewise.
	* inet/ether_line.c: Likewise.
	* inet/getnetgrent_r.c: Likewise.

	* inet/Makefile (+gccwarn): Remove definition.
	Instead set CFLAGS-rcmd.c, CFLAGS-rexec.c, and CFLAGS-ruserpass.c
	to `-w'.
	* inet/aliases.h: Add C++ protection.
	* inet/ether_hton.c: Add prototype for __nss_ethers_lookup.
	(ether_hostton): Remove unused variable result.
	* inet/ether_ntoh.c: Likewise.
	* inet/ether_line.c: Include <ctype.h> and <string.h>.
	* inet/getnetgrent_r.c: Include <stdlib.h>.
	Use casts to prevent warnings.
	(innetgr): Initialize `known' and `needed'.
	* inet/inet_net.c: Make local variable `i' of type u_int32_t.
	* nss/getXXbyYY_r.c (INTERNAL (REENTRANT_NAME)) [NEED__RES]: Don't
	return NULL.  Instead set *RESULT to NULL and return -1.
	* nss/getXXent_r.c (INTERNAL (REENTRANT_GETNAME)): Likewise.
	(SETFUNC_NAME, ENDFUNC_NAME) [NEED__RES]: Don't return anything.

	* nss/nss_files/files-alias.c: Debug function.  I didn't worked at
	all before.

Sat Nov 16 15:25:34 1996  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/posix/readv.c: Don't use PTR anymore.
	* sysdeps/posix/writev.c: Likewise.

	* version.h (VERSION): Bump to 1.98.

	* nss/db-Makefile: Generate lines for getXXXent iteration.

	* sysdeps/alpha/Dist: Don't distribute removed files divlu.S,
	divqu.S, remlu.S, and remqu.S.

Fri Nov 15 08:55:54 1996  Andreas Jaeger  <aj@arthur.pfalz.de>

	* posix/unistd.h: Correct typo in documentation.

Thu Nov 14 18:08:14 1996  a sun  <asun@zoology.washington.edu>

	* inet/netinet/tcp.h: Use __ protected versions instead of
	BYTE_ORDER, LITTLE_ENDIAN, and BIG_ENDIAN directly.

Sat Nov 16 13:44:55 1996  Ulrich Drepper  <drepper@cygnus.com>

	* intl/loadmsgcat.c (_nl_msg_cat_cntr): Initialize so that
	references in libc.so are not anymore undefined.

Sat Nov 16 18:17:36 1996  NIIBE Yutaka  <gniibe@mri.co.jp>

	* io/utime.h: Rename second parameter for utime to prevent warning
	for -Wshadow.
	* dirent/dirent.h: Same here for scandir prototype.
	* math/mathcalls.h: Likewise for frexp and ldexp.
	* sysdeps/unix/sysv/linux/netinet/in.h: Likewise for bindresvport.

Sat Nov 16 03:49:27 1996  Ulrich Drepper  <drepper@cygnus.com>

	* stdlib/tst-strtod.c: Add test for error case below.

Sat Nov 16 03:48:39 1996  Wolfram Gloger  <Wolfram.Gloger@dent.med.uni-muenchen.de>

	* stdlib/strtod.c: Recognize numbers like 0e-19.

Fri Nov 15 08:38:43 1996  Andreas Jaeger  <aj@arthur.pfalz.de>

	* time/Makefile ($(installed-localtime-file)): Fix path to
	rellns-sh.

	* Makefile: Don't generate and install gnu/lib-names.h if
	$(build-shared) is not `yes'.

Thu Nov 14 09:23:58 1996  H.J. Lu (hjl@gnu.ai.mit.edu)

	* sysdeps/posix/Makefile ($(common-objpfx)mk-stdiolim): Depend
	on $(..)posix/posix1_lim.h, not ../posix/posix1_lim.h.

	* Makerules (REAL_MAKE_VERSION): New, use it instead of
	MAKE_VERSION.

Thu Nov 14 22:10:43 1996  Ulrich Drepper  <drepper@cygnus.com>

	* nss/nss_files/files-XXX.x (_nss_files_get,ENTNAME_r): Fix typo.
	* nss/getXXent_r.c: Fix typo.  Set correct return value when
	no further service is available.

Thu Nov 14 17:48:13 1996  Ulrich Drepper  <drepper@cygnus.com>

	* db/recno/rec_put.c: Add cast to avoid warning.
	* db/recno/rec_close.c: Likewise.
	* db/mpool/mpool.c: Likewise.
	* db/hash/hash_bigkey.h: Likewise.
	* db/hash/hash.c: Likewise.
	* db/btree/bt_split.c: Likewise.
	* db/btree/bt_put.c: Likewise.

Thu Nov 14 14:11:44 1996  Ulrich Drepper  <drepper@cygnus.com>

	* dirent/dirent.h: Update copyright.
	* elf/elf.h: Likewise.
	* elf/link.h: Likewise.
	* gmon/sys/gmon_out.h: Likewise.
	* gnu-versions.h: Likewise.
	* intl/libintl.h: Likewise.
	* io/fcntl.h: Likewise.
	* io/ftw.h: Likewise.
	* io/sys/statfs.h: Likewise.
	* io/utime.h: Likewise.
	* locale/langinfo.h: Likewise.
	* malloc/malloc.h: Likewise.
	* malloc/obstack.h: Likewise.
	* misc/ar.h: Likewise.
	* misc/error.h: Likewise.
	* misc/mntent.h: Likewise.
	* misc/sgtty.h: Likewise.
	* misc/sys/cdefs.h: Likewise.
	* misc/sys/dir.h: Likewise.
	* misc/sys/file.h: Likewise.
	* misc/sys/ioctl.h: Likewise.
	* misc/sys/ustat.h: Likewise.
	* posix/fnmatch.h: Likewise.
	* posix/getopt.h: Likewise.
	* posix/glob.h: Likewise.
	* posix/posix2_lim.h: Likewise.
	* posix/regex.h: Likewise.
	* posix/sys/times.h: Likewise.
	* posix/sys/types.h: Likewise.
	* posix/sys/utsname.h: Likewise.
	* posix/tar.h: Likewise.
	* posix/wordexp.h: Likewise.
	* resource/sys/resource.h: Likewise.
	* resource/sys/vlimit.h: Likewise.
	* resource/sys/vtimes.h: Likewise.
	* socket/sys/socket.h: Likewise.
	* socket/sys/un.h: Likewise.
	* stdio-common/printf.h: Likewise.
	* stdlib/alloca.h: Likewise.
	* string/argz.h: Likewise.
	* string/endian.h: Likewise.
	* string/envz.h: Likewise.
	* string/memory.h: Likewise.
	* string/strings.h: Likewise.
	* sysdeps/generic/crypt.h: Likewise.
	* sysdeps/generic/direntry.h: Likewise.
	* sysdeps/generic/gnu/types.h: Likewise.
	* sysdeps/generic/ioctl-types.h: Likewise.
	* sysdeps/generic/netinet/in.h: Likewise.
	* sysdeps/generic/resourcebits.h: Likewise.
	* sysdeps/generic/sigset.h: Likewise.
	* sysdeps/generic/sockaddrcom.h: Likewise.
	* sysdeps/generic/sys/mman.h: Likewise.
	* sysdeps/generic/sys/ptrace.h: Likewise.
	* sysdeps/generic/termbits.h: Likewise.
	* sysdeps/generic/waitstatus.h: Likewise.
	* sysdeps/ieee754/huge_val.h: Likewise.
	* sysdeps/ieee754/nan.h: Likewise.
	* sysdeps/mach/hurd/local_lim.h: Likewise.
	* sysdeps/mach/hurd/statbuf.h: Likewise.
	* sysdeps/stub/huge_val.h: Likewise.
	* sysdeps/stub/libc-lock.h: Likewise.
	* sysdeps/stub/signum.h: Likewise.
	* sysdeps/stub/statbuf.h: Likewise.
	* sysdeps/stub/waitflags.h: Likewise.
	* sysdeps/unix/bsd/bsd4.4/sockaddrcom.h: Likewise.
	* sysdeps/unix/bsd/osf/alpha/statbuf.h: Likewise.
	* sysdeps/unix/bsd/osf/sys/mman.h: Likewise.
	* sysdeps/unix/bsd/signum.h: Likewise.
	* sysdeps/unix/bsd/statbuf.h: Likewise.
	* sysdeps/unix/bsd/sun/signum.h: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/resourcebits.h: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/sys/mman.h: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/termbits.h: Likewise.
	* sysdeps/unix/bsd/ultrix4/sys/mman.h: Likewise.
	* sysdeps/unix/bsd/waitflags.h: Likewise.
	* sysdeps/unix/sysv/irix4/signum.h: Likewise.
	* sysdeps/unix/sysv/irix4/statbuf.h: Likewise.
	* sysdeps/unix/sysv/irix4/sys/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/statbuf.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/sys/io.h: Likewise.
	* sysdeps/unix/sysv/linux/direntry.h: Likewise.
	* sysdeps/unix/sysv/linux/gnu/types.h: Likewise.
	* sysdeps/unix/sysv/linux/ioctl-types.h: Likewise.
	* sysdeps/unix/sysv/linux/local_lim.h: Likewise.
	* sysdeps/unix/sysv/linux/netinet/in.h: Likewise.
	* sysdeps/unix/sysv/linux/resourcebits.h: Likewise.
	* sysdeps/unix/sysv/linux/signum.h: Likewise.
	* sysdeps/unix/sysv/linux/statbuf.h: Likewise.
	* sysdeps/unix/sysv/linux/sys/io.h: Likewise.
	* sysdeps/unix/sysv/linux/sys/klog.h: Likewise.
	* sysdeps/unix/sysv/linux/sys/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/sys/ptrace.h: Likewise.
	* sysdeps/unix/sysv/linux/syscall.h: Likewise.
	* sysdeps/unix/sysv/linux/termbits.h: Likewise.
	* sysdeps/unix/sysv/local_lim.h: Likewise.
	* sysdeps/unix/sysv/sco3.2.4/syscall.h: Likewise.
	* sysdeps/unix/sysv/sco3.2/local_lim.h: Likewise.
	* sysdeps/unix/sysv/signum.h: Likewise.
	* sysdeps/unix/sysv/sysv4/i386/statbuf.h: Likewise.
	* sysdeps/unix/sysv/sysv4/signum.h: Likewise.
	* sysdeps/unix/sysv/sysv4/sigset.h: Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/signum.h: Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/statbuf.h: Likewise.
	* sysdeps/unix/sysv/sysv4/waitflags.h: Likewise.
	* sysdeps/vax/huge_val.h: Likewise.
	* values.h: Likewise.

Thu Nov 14 04:22:41 1996  Ulrich Drepper  <drepper@cygnus.com>

	* malloc/obstack.h: Use memcpy instead of bcopy and define a macro
	`memcpy' using bcopy if memcpy is not available.

	* manual/stdio.texi: Correct description of printf customization.
	The argument info function is not optional anymore and the
	interface for `printf_function' also changed.
	* manual/examples/rprintf.c: Define and use argument info function.

	* stdio-common/printf.h (struct printf_info): Change type for field
	`pad' to wchar_t.
	Correct comment for `register_printf_function'.

	* nss/getXXbyYY.c [NEED_H_ERRNO]: Don't pass pointer to h_errno
	to reentrant function.  Instead use temporary variable and set
	h_errno if an error occured.
	Reported by NIIBE Yutaka.

	are no bits set in the masks.  Reported by baldazzi@csr.unibo.it.
1996-11-17 03:15:52 +00:00
Ulrich Drepper
46ec036de6 update from main archive 961020
Mon Oct 21 01:32:36 1996  Ulrich Drepper  <drepper@cygnus.com>

	* elf/rtld.c (dl_main): Move initialization of `_dl_starting_up'
	to beginning of function.  So libc functions can use this flag.
	* sysdeps/generic/_strerror.c: Don't use dgettext for message
	translation while `_dl_starting_up' is nonzero.

	* elf/dl-deps.c (_dl_map_object_deps): Add new parameter
 	TRACE_MODE.
	Pass parameter value to _dl_map_object.
	* elf/dl-load (_dl_map_object): Add new parameter TRACE_MODE.
	If TRACE_MODE is nonzero don#t signal error when shared lib
	is not found.  Instead create fake entry for link map.
	* dl-open.c (dl-open): Pass 0 for new argument to _dl_map_object.
	* dl-runtime.c (_dl_object_relocation_scope): Pass 0 for new
	argument to _dl_map_object_deps.
	* elf/link.h: Add new parameter TRACE_MODE for prototypes of
	_dl_map_object and _dl_map_object_deps.
	* elf/rtld.c (dl_main): Pass 0 for new argument to _dl_map_object
	and _dl_map_object_deps.
	When mode == trace test for l_opencount == 0 before printing
	link information since this means the lib is not found.

Sun Oct 20 22:19:58 1996  Ulrich Drepper  <drepper@cygnus.com>

	* rpm/template: Add INSTALL to %doc line to follow copyright
	restrictions which demand the distribution of the copyright
	messages in INSTALL even for binary distributions.

	* features.h: Rename to...
	* features.h.in: ...this.  Change value of __GNU_LIBRARY__ to 2
	(for major version numberof package) and add __GNU_LIBRARY_MINOR__
	and __GNU_LIBRARY_INTERFACE__.
	* Makefile ($(objpfx)features.h): New rule to generate features.h
	from template features.h.in.

	* sysdeps/unix/sysv/linux/getsysstats.c: Include <paths.h>.

Sun Oct 20 00:00:13 1996  Richard Henderson  <rth@tamu.edu>

	* locale/programs/linereader.c (lr_open): Cast away const before free.
	(lr_close): Likewise.

	* misc/mntent.h: Move _PATH_MNTTAB & _PATH_MOUNTED to paths.h.
	* misc/paths.h: Move to ...
	* sysdeps/generic/paths.h: ... here.
	* paths.h: Remove.
	* sysdeps/unix/sysv/linux/paths.h: New file.  Correct _PATH_STDPATH,
	_PATH_MAILDIR, _PATH_MOUNTED, _PATH_UNIX to comply with the fsstd.

	* nss/nss_db/db-netgrp.h: Include <string.h>.

	* stdio-common/psignal.c: De-ansidecl-ify.  Allow NULL entries in
	_sys_siglist, which result in the "Unknown signal" message.
	* string/strsignal.c: Likewise.
	* sysdeps/generic/Makefile [stdio-common]: If $(inhibit-siglist),
	don't auto-generate siglist.c.
	* sysdeps/unix/sysv/linux/Makefile [stdio-common]: Set inhibit-siglist.
	* sysdeps/unix/sysv/linux/siglist.c: New file.  Not needing to
	autogenerate makes bootstrapping and cross-compiling much easier.
	* sysdeps/unix/sysv/linux/siglist.h: New file.

	* stdlib/longlong.h: Prototype __udiv_qrnnd.

	* sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_headers): Remove
	sys/io.h.  It is already added in .../linux/Makefile.

	* sysdeps/unix/sysv/linux/alpha/sigaction.h: New file.
	* sysdeps/unix/sysv/linux/alpha/signum.h: New file.
	* sysdeps/unix/sysv/linux/alpha/statbuf.h: New file.

Sun Oct 20 17:17:12 1996  Ulrich Drepper  <drepper@cygnus.com>

	Add implementation of POSIX.1g function getaddrinfo.
	* posix/Makefile (routines): Add getaddrinfo.
	* sysdeps/posix/getaddrinfo.c.: New file.  Add implementation by
 	Craig Metz.
	* sysdeps/stub/getaddrinfo.c: New file.  Stub implementation.
	* resolv/netdb.h [__USE_POSIX]: Add getaddrinfo prototypes and
	related constants and structures.

Sun Oct 20 13:02:34 1996  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/stub/lockfile.c: Rename functions to __internal_*.
	Make all old names weak alises so that they can be replaced
	by libpthread.

	* stdio-common/vfprintf.c: Only declare __flockfile and __funlockfile
	for !USE_IN_LIBIO.
	[USE_IN_LIBIO]: Call _IO_flockfile and _IO_funlockfile instead of
	__flockfile and __funlockfile.
	Reported by NIIBE Yutaka.

	* crypt/md5.c: Change form of copyright message according to GNITS
	rules.
	Add warning for requirement on RESBUF parameter for `md5_finish_ctx'
	and `md5_read_ctx' function.
	* crypt/md5.h: Likewise.

	* grp/testgrp.c: Don't use perror for error cases since getgr* and
	getpw* functions do not return usable error codes.

Sun Oct 19 23:05:32 1996  Jim Meyering  <meyering@asic.sc.ti.com>

	* crypt/md5.c (md5_process_bytes): Used casting for pointer
 	arithmetic.

Sun Oct 20 03:53:23 1996  Ulrich Drepper  <drepper@cygnus.com>

	* sunrpc/Makefile (others): Remove portmap here, too.
1996-10-21 01:26:31 +00:00
Ulrich Drepper
706074a5bb update from main archive 960814 1996-08-15 01:23:29 +00:00
Roland McGrath
e75154a665 Remade for alpha-1.93 1996-08-02 05:27:50 +00:00
Roland McGrath
f51d1dfd35 * elf/dl-reloc.c: Include "dynamic-link.h" at file scope.
* elf/rtld.c: Include <string.h>.

	* elf/dynamic-link.h (ELF_DYNAMIC_DO_REL, ELF_DYNAMIC_DO_RELA,
	ELF_DYNAMIC_RELOCATE): No longer take RESOLVE argument.
	Conditionalize defns on [RESOLVE].
	* elf/do-rel.h (elf_dynamic_do_rel): Likewise.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
	Instead use RESOLVE macro with same args.
	(elf_machine_rel): Conditionalize defn on [RESOLVE].
	* elf/dl-reloc.c (RESOLVE): New macro, define before including
	"dynamic-link.h".  It replaces `resolve' local function.
	* elf/dl-runtime.c: Likewise.
	* elf/rtld.c: Likewise.
1996-07-14 11:39:25 +00:00
Roland McGrath
2064087b5f Sun Jul 14 01:51:39 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* manual/Makefile (glibc-targets): Variable and targets removed.

Sat Jul 13 23:50:17 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* manual/Makefile (lib): New phony target.  Depend on stamp files.
	($(objpfx)stamp%-$(subdir)): New rule to create them when necessary.

1996-07-13  Paul Eggert  <eggert@twinsun.com>

	* time/strftime.c (strftime): Use space padding for %e, %k, %l,
	to match Emacs format-time-string specification.
	(DO_NUMBER_SPACEPAD): Renamed from DO_NUMBER_NOPAD.

Sat Jul 13 20:17:38 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* elf/dl-deps.c (_dl_map_object_deps): Take new args PRELOADS and
	NPRELOADS, vector of `struct link_map *'s; add them to the searchlist
	between MAP and its deps.
	* elf/link.h: Fix decl.
	* elf/rtld.c (dl_main): If not secure, parse LD_PRELOAD for
	colon-separated list of names, map those and pass vector of ptrs as
	PRELOADS list to _dl_map_object_deps.
	* elf/dl-runtime.c (_dl_object_relocation_scope): Pass new args to
	_dl_map_object_deps with empty preload list.
	* elf/dl-open.c (_dl_open): Likewise.

	* sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_open_zero_fill): Function
	removed.
	(__mmap): Pass MACH_PORT_NULL for memobj port when (flags & MAP_ANON).
	* sysdeps/generic/dl-sysdep.c (_dl_sysdep_open_zero_fill):
	Conditionalize defn on [! MAP_ANON].
	* elf/dl-minimal.c (malloc): Conditionalize use of _dl_zerofd
	on [! MAP_ANON].
	* elf/rtld.c (dl_main): Likewise.
	* elf/dl-load.c (_dl_zerofd): Conditionalize defn on [! MAP_ANON].
	(_dl_map_object_from_fd): Conditionalize initialization of _dl_zerofd.

	* elf/dl-fini.c (_dl_fini): Skip finalizer for executable itself.

Sat Jul 13 02:47:53 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* stdlib/random.c (__random): Declare as int32_t to be in sync
	with declaration.

	* socket/Makefile (headers): Add socketbits.h.

	* misc/mntent.c (endmntent): Allow for NULL stream.  SunOS does
	it that way.

	* grp/initgroups.c (initgroups): Add groups that user is a member
 	of, not the ones he is _not_ a member of.

	* nss/nsswitch.c (known_compare): Make known_compare() a static
 	instead of a local function.  The latter are difficult to debug
 	and slow to execute on certain platforms.

	* sysdeps/posix/ttyname_r.c (ttyname_r): Use sizeof (dev) - 1 in
 	place of sizeof (dev).  The size of a literal string includes the
 	NUL byte.

	* sysdeps/unix/getlogin.c (getlogin): Initialize ut_fd with -1.

Thu Jul 11 16:59:10 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* misc/mntent.c (addmntent): Seek to end of file before writing
 	entry.  Return 1 on error, not -1.

Tue Jul  9 19:08:05 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* sysdeps/unix/sysv/linux/syscalls.list: Mark bdflush as EXTRA
	syscall.

Fri Jul  5 18:44:55 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* sysdeps/unix/sysv/linux/alpha/ioperm.c (port_to_cpu_addr): Size
 	shift amount for Jensen must be 5 not 4.

Sat Jul 13 20:04:28 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* socket/sys/socket.h (struct osockaddr): New type.

Sat Jul 13 03:50:53 1996  Ulrich Drepper  <drepper@cygnus.com>

	* misc/Makefile (routines): Add qefgcvt and qefgcvt_r.
	* misc/efgcvt.c, misc/efgcvt_r.c: Change code so that the `double'
	and `long double' versions can be generated.
	* misc/qefgcvt.c, misc/qefgcvt_r.c: New files.  Define macros
	so that included efgcvt{,_r}.c file generate `long double'
	versions.
	* stdlib/stdlib.h: Add prototypes for q[efg]cvt() and q[ef]cvt_r()
	functions.

	* manual/startup.texi: Document new getsubopt function.
	* manual/examples/subopt.c: New example program for documenting
	getsubopt function.

Fri Jul 12 23:58:37 1996  Ulrich Drepper  <drepper@cygnus.com>

	* stdlib/Makefile (routines): Add getsubopt.
	* stdlib/stdlib.h: Add prototype for getsubopt.
	* stdlib/getsubopt.c: New file.  Implement getsubopt function
	to handle suboption parsing.
1996-07-14 06:04:09 +00:00
Roland McGrath
ba79d61b44 * Makerules ($(common-objpfx)libc.so): Depend on $(elfobjdir)/ld.so.
* elf/dl-close.c: New file.
	* elf/link.h: Declare _dl_close.
	* elf/Makefile (routines): Add dl-close.
	* elf/dlclose.c (dlclose): Use _dl_close.

	* elf/Makefile ($(objpfx)librtld.so): Remove libelf from deps.

	* elf/dl-runtime.c (_dl_global_scope): New variable.
	(_dl_object_relocation_scope): New function.
	(fixup): Use it.
	* elf/rtld.c (dl_main): Use it.
	* elf/dl-open.c (_dl_open): Use it.  If (MODE & RTLD_GLOBAL), set the
	l_global bit and append the new map to _dl_global_scope.
	* elf/link.h: Declare _dl_global_scope, _dl_global_scope_alloc,
	and _dl_object_relocation_scope.

	* elf/link.h (struct link_map): Add l_loader member.
	Remove _dl_map_object_from_fd decl.
	* elf/dl-load.c (_dl_map_object): Pass LOADER to ...
	(_dl_map_object_from_fd): Take new arg LOADER and set l_loader member.
	(_dl_map_object): Try DT_RPATH from all loaders up the chain.

	* elf/dl-object.c (_dl_loaded): Variable removed.
	(_dl_default_scope): New variable replaces it.
	* elf/link.h (_dl_loaded): Remove variable decl; instead define as
	macro for _dl_default_scope[2].
	(_dl_default_scope): Declare it.
	* sysdeps/i386/dl-machine.h (RTLD_START): Use _dl_default_scope[2]
	instead of _dl_loaded.
	* sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
	* elf/rtld.c (dl_main): Use _dl_default_scope for symbol lookups.

	* elf/dl-reloc.c (_dl_relocate_object): Remove check for _dl_rtld_map.
	* elf/rtld.c (dl_main): Pass 0 for LAZY flag when re-relocating self.

	* elf/link.h (struct link_map.l_type): Remove lt_interpreter.
 	(struct link_map): Add new flag member l_global.

	* elf/dl-reloc.c (_dl_relocate_object): Check for _dl_rtld_map
	directly instead of looking for lt_interpreter.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
	* elf/rtld.c (_dl_start): Don't bother setting BOOTSTRAP_MAP.l_type.
	(dl_main): Set _dl_rtld_map.l_type to lt_library.

	* elf/dl-deps.c (_dl_map_object_deps): Propagate MAP->l_type to
	dependencies loaded, downgrading lt_executable -> lt_library.

	* elf/dl-load.c (_dl_map_object_from_fd): Take new arg TYPE and set
	l_type from that, translating lt_library->lt_executable based on the
	file's ELF type.
	(_dl_map_object): Likewise.
	* elf/link.h: Update prototypes.
	* elf/dl-open.c: Pass type lt_loaded.
	* elf/rtld.c: Pass type lt_library.

	* elf/dl-load.c (_dl_map_object_from_fd): Handle null return from
	_dl_new_object.
	(_dl_map_object_from_fd: lose): Unchain and free L if it's not null.
	Free REALNAME, and just use NAME in error message.
	* elf/dl-object.c (_dl_new_object): If malloc fails, return null
	instead of calling _dl_signal_error.

	* elf/dl-load.c (_dl_map_object_from_fd): Close FD before signalling
	error for _dl_zerofd setup failure.

	* elf/dl-object.c (_dl_startup_loaded): Variable removed.
	* elf/link.h: Remove its decl.

	* elf/dl-reloc.c (_dl_relocate_object): Take new SCOPE arg and pass it
	through to _dl_lookup_symbol.
	* elf/link.h (_dl_relocate_object): Update comment and prototype.
	* elf/rtld.c (dl_main): Pass scope vector to _dl_relocate_object.

	* elf/dl-lookup.c (_dl_lookup_symbol): Arg SYMBOL_SCOPE is now a
	null-terminated vector of pointers, no longer a vector of exactly two.
	* elf/link.h (_dl_lookup_symbol): Update comment and prototype.

	* elf/dl-runtime.c (fixup): Set up scope for symbol lookup properly as
	done in _dl_relocate_object.

	* elf/dlopen.c: Pass "" to _dl_open when FILE is null.
1996-06-10 20:19:39 +00:00
Roland McGrath
266180eb98 Mon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* sysdeps/mach/hurd/dl-sysdep.c (__open): Define this instead of open.
	(__close, __mmap): Likewise define with __ names now.

Mon Jun 10 05:13:18 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* elf/dl-support.c: New file.
	* elf/Makefile (CFLAGS-dl-support.c): New variable.
	(routines, elide-routines.so): Add dl-support.

	* elf/dl-minimal.c (_dl_pagesize): Remove common defn.
	* elf/dl-load.c (_dl_pagesize): Define it here.
	(_dl_map_object_from_fd): Initialize it if zero.
	* elf/link.h (_dl_pagesize): Remove const.

Sun Jun  9 04:04:26 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* elf/Makefile (routines): Add dl-symbol.
	* elf/dl-lookup.c (_dl_symbol_value): Moved to ...
	* elf/dl-symbol.c: New file.

	* elf/elf.h (Elf32_Xword, Elf32_Sxword): New types.
	(Elf32_Section, Elf64_Section): New types, 16 bits.
	(Elf32_Sym, Elf64_Sym): Use it.

	* elf/dl-deps.c (_dl_open): Moved to ...
	* elf/dl-open.c: New file.
	* Makefile (routines): Add dl-open.

	* elf/Makefile (dl-routines): New variable.
	(routines): Add $(dl-routines).
	(elide-routines.so): New variable, set to $(dl-routines).
	(libdl-inhibit-o): Variable removed; build all flavors of -ldl.
	(rtld-routines): All but rtld, dl-sysdep, and dl-minimal moved to
 	$(dl-routines).

	* elf/dl-lookup.c (_dl_lookup_symbol): Remove magic symbol grokage.

	* elf/dladdr.c: Use ELFW(ST_BIND) in place of ELF32_ST_BIND.

	* elf/dl-load.c (open_path): Use __ names for open and close.  Avoid
	using strdup.
	(_dl_map_object): Likewise.
	(_dl_map_object_from_fd): Use __ names for mmap, munmap, and mprotect.
	* elf/dl-minimal.c (malloc): Likewise.
	* elf/dl-reloc.c (_dl_relocate_object): Likewise.

	* elf/dl-minimal.c (_dl_pagesize): New variable.
	(malloc): Use that instead of a static variable.
	* elf/dl-reloc.c (_dl_relocate_object): Use _dl_pagesize instead of
	calling getpagesize.
	* elf/dl-load.c (_dl_map_object_from_fd): Likewise.
	* elf/link.h: Declare _dl_pagesize.

	* elf/rtld.c (dl_r_debug): Renamed to _dl_r_debug.

	* elf/link.h (struct link_map): Use Half for l_phnum instead of Word.
  	* elf/rtld.c (dl_main): Use Half for phdr count arg.
	(_dl_sysdep_start): Update prototype of DL_MAIN function ptr arg.

	* elf/dl-load.c (_dl_map_object_from_fd): Use explicit Elf32_Word to
 	extract 4-byte magic number, not ElfW(Word).  Match EI_CLASS against
 	native wordsize, either 32 or 64.

	* elf/elf.h (Elf64_Byte, Elf64_Section): Typedefs removed.  In C a
 	char is always a byte, no need for a typedef.  Section indices are
	16-bit quantities in elf64, which already have a typedef Elf64_Half.

	Remove partial -lelf implementation.  There is now a
	separately-distributed `libelf' package that implements it.
	* elf/dl-lookup.c: Don't #include <libelf.h> any more.
	(_dl_elf_hash): New function, moved from
	libelf.h:elf_hash.
	(_dl_lookup_symbol): Use it instead of elf_hash.
	* elf/libelf.h: File removed.
	* elf/elf_hash.c: File removed.
	* elf/Makefile (headers): Remove libelf.h.
	(extra-libs): Remove libelf.
	(libelf-routines): Variable removed.

	* elf/Makefile (libdl.so): Remove commands from this target.  The
 	implicit rule commands are correct, this explicit rule just serves to
 	add some dependencies.

	* elf/dl-lookup.c (_dl_lookup_symbol): Use ELFW(ST_TYPE) in place of
 	ELF32_ST_TYPE.  Likewise ST_BIND.
	* elf/do-rel.h (elf_dynamic_do_rel): Likewise R_SYM.

	* elf/link.h (ElfW): New macro for wordsize-independent ElfXX_* type
	naming.
	(ELFW): New macro, likewise for ELFXX_* macro naming.
	(_ElfW, _ElfW_1): New macros, subroutines of ElfW and ELF.

Sat Jun  8 20:52:38 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* elf/link.h, elf/do-rel.h, elf/dynamic-link.h, elf/dl-deps.c,
 	elf/dl-init.c, elf/dl-load.c, elf/dl-lookup.c, elf/dl-reloc.c,
 	elf/dl-runtime.c, elf/dladdr.c, elf/dlclose.c, elf/dlsym.c,
 	elf/linux-compat.c, elf/rtld.c: Change all uses of `Elf32_XXX' to
 	`ElfW(XXX)' for wordsize-independence.

Sat Jun  8 20:50:42 1996  Richard Henderson  <rth@tamu.edu>

	* elf/elf.h: Move Elf64_* types in parity with Elf32 counterparts.
	(Elf64_auxv_t): New type.
	(EM_ALPHA, R_ALPHA_*): New macros for elf64-alpha format.
1996-06-10 10:18:47 +00:00
Roland McGrath
efec1d0c47 Tue Jun 4 02:25:44 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* elf/linux-compat.c (_init): Pass reloc_addr arg to _dl_lookup_symbol.

	* elf/dl-lookup.c (_dl_lookup_symbol): Use l_searchlist.

	* elf/dl-deps.c: New file.
	* elf/Makefile (rtld-routines): Add dl-deps.
	* elf/link.h: Declare _dl_map_object_deps, _dl_open.
	* elf/rtld.c (dl_main): Use _dl_map_object_deps.
	* elf/dlopen.c: Use _dl_open.

	* elf/rtld.c (dl_main): Remove BEFORE_RTLD variable and list
	frobnication based on its value.  Detach RTLD_MAP from the chain if
	its l_opencount is zero after loading deps.

	* elf/dlfcn.h (RTLD_BINDING_MASK): New macro.

	* elf/link.h (struct link_map): Replace l_deps_loaded flag member with
	`struct link_map **l_searchlist' and `unsigned int l_nsearchlist'.
	* elf/dl-lookup.c (_dl_lookup_symbol): Make SYMBOL_SCOPE arg an array
	of two link_map ptrs.  Search the maps in the l_searchlist of each
	elt that is not null.
	* elf/dl-reloc.c (_dl_relocate_object): Pass proper SCOPE array.
	* elf/dl-runtime.c: Likewise.
	* elf/dlsym.c: Likewise.
	* elf/rtld.c (dl_main): Likewise.

	* elf/dl-minimal.c (realloc): Support realloc of the block most
	recently returned by the minimal malloc.

	* intl/localealias.c, intl/dcgettext.c [_LIBC]: Define HAVE_ALLOCA.
1996-06-04 05:18:15 +00:00
Roland McGrath
710f7bab59 Mon Jun 3 00:30:35 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* elf/dl-lookup.c (_dl_lookup_symbol): Take new arg RELOC_ADDR and
	don't allow a defn resolving to that address.
	* elf/link.h: Update prototype and comment.
	* elf/dl-runtime.c (fixup): Define local `resolve' function and pass
	it to elf_machine_relplt.
	* elf/dl-reloc.c (_dl_relocate_object: resolve): Take new arg
	RELOC_ADDR and pass it through to _dl_lookup_symbol.
	* elf/do-rel.h (elf_dynamic_do_rel): Pass RESOLVE to elf_machine_rel
	instead of calling it ourselves and passing its results.
	(elf_dynamic_do_rel): RESOLVE fn takes new arg RELOC_ADDR.
	* elf/rtld.c (dl_main): Pass 0 for RELOC_ADDR to _dl_lookup_symbol.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Remove SYM_LOADADDR
	arg.  Add RESOLVE function ptr arg.  Call *RESOLVE as necessary.
	* sysdeps/m68k/dl-machine.h (elf_machine_rela): Likewise.
	* sysdeps/stub/dl-machine.h: Likewise.

	* csu/initfini.c (_fini): Add extern decl for i_am_not_a_leaf.

	* elf/dlfcn.h (dl_open_mode): Enumerated type removed.
	(RTLD_LAZY, RTLD_NOW): Define these as macros instead.
	(RTLD_GLOBAL): New macro.
	(dlopen): Take arg of type int instead of dl_open_mode.
	* elf/dlopen.c: Likewise.

	* math/math.h (_Mldbl): New macro, either produces L suffix or not.
	(M_*): Use it for these constants.
1996-06-03 04:46:40 +00:00
Roland McGrath
6c03c2cf27 * elf/dl-lookup.c (_dl_lookup_symbol): Arg NOSELF renamed to NOPLT.
Reject SHN_UNDEF defns iff NOPLT is nonzero.
	* elf/link.h (_dl_lookup_symbol): Update prototype and comment.
	* elf/dl-runtime.c (fixup): Pass 1 to _dl_lookup_symbol for NOPLT.
	* elf/dlsym.c (dlsym): Pass 0.
	* elf/rtld.c (dl_main): Likewise.
	* elf/dl-reloc.c (_dl_relocate_object: resolve): Second arg R_OFFSET
	replaced with NOPLT flag.  Pass it through to _dl_lookup_symbol.
	* elf/do-rel.h (elf_dynamic_do_rel): Update prototype of RESOLVE arg.
	Pass `elf_machine_pltrel_p (R->r_type)' result as NOPLT flag value.
	* sysdeps/i386/dl-machine.h (elf_machine_pltrel_p): New macro.
	* sysdeps/m68k/dl-machine.h (elf_machine_pltrel_p): Likewise.
	* sysdeps/stub/dl-machine.h (elf_machine_pltrel_p): Likewise.
1996-06-02 21:35:43 +00:00
Roland McGrath
be10a86854 *** empty log message ***
Mon Feb 19 15:30:26 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>

	* stdio-common/tstscanf.c (main): Add check for "0" as %d.

	* sysdeps/stub/msync.c: Undo change of Jan 29; just two args.
	Only some systems have three args; let them define their own stub.

	* sysdeps/generic/dl-sysdep.c: Declare _dl_secure.

	* sysdeps/generic/machine-gmon.h: New file.
	* gmon/Makefile (distribute): Add machine-gmon.h.
	* gmon/mcount.c: Undo changes of Feb 13.
	Include "machine-gmon.h".

Sun Feb 18 13:24:06 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>

	* sysdeps/unix/sysv/linux/direct.h: File removed, since it is
	identical to unix/common/direct.h.

	* sysdeps/unix/Makefile [no_deps]: Don't include s-proto.d.

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

	* stdio-common/Makefile (tests): Remove scanf6.

	* sysdeps/unix/sysv/linux/Makefile (non-lib.a): Append libieee.a.

	* time/mktime.c (mktime): Move static variable localtime_offset to
	file scope.

	* stdio-common/vfscanf.c: Put '0' in buffer before scanning for %i
	base indicator.

Thu Feb 15 16:56:17 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/m68k/dl-machine.h (elf_machine_load_address): Corrected.
	(ELF_MACHINE_BEFORE_RTLD_RELOC): Define.
	(_dl_runtime_resolve): Save %a1 as well.
	(ELF_MACHINE_RUNTIME_FIXUP_ARGS): Add second dummy arg.
	(elf_machine_relplt): Define.

	* elf/dl-runtime.c: Include possible extra args in declaration of
 	fixup.
1996-02-19 20:54:38 +00:00
Roland McGrath
01f3e03bcd Sat Feb 10 13:09:03 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/sys/mman.h: Define MAP_ANON and
	MAP_FILE if not already defined.

	* elf/elf.h: Add m68k reloc definitions.
	* sysdeps/m68k/dl-machine.h, sysdeps/m68k/elf/start.S: New files.
Sat Feb 10 13:09:03 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/unix/sysv/linux/sys/mman.h: Define MAP_ANON and
	MAP_FILE if not already defined.

	* elf/elf.h: Add m68k reloc definitions.
	* sysdeps/m68k/dl-machine.h, sysdeps/m68k/elf/start.S: New files.
1996-02-13 09:26:53 +00:00
Roland McGrath
38334018ff Tue Feb 13 00:12:12 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* sysdeps/i386/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE,
	elf_machine_relplt): New macros.
	* elf/dl-runtime.c: New file.
	* sysdeps/i386/dl-runtime.c, sysdeps/stub/dl-runtime.c: Files removed.
	* sysdeps/i386/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE,
	elf_machine_relplt): New macros.
	* elf/dl-runtime.c: New file.
	* sysdeps/i386/dl-runtime.c, sysdeps/stub/dl-runtime.c: Files removed.
1996-02-13 07:05:16 +00:00