Commit Graph

179 Commits

Author SHA1 Message Date
Ulrich Drepper
f116c77f7b Update.
* dlfcn/Makefile (tests): Add errmsg1.
	(modules-names): Add errmsg1mod.
	Add rules to run errmsg1.
	* dlfcn/errmsg1.c: New file.
	* dlfcn/errmsg1mod.c: New file.
2000-12-28 03:59:21 +00:00
Ulrich Drepper
9c99fa3d31 Update.
* dlfcn/dlerror.c (dlerror): Always create output string which
	includes object file name.
2000-12-28 00:48:48 +00:00
Andreas Jaeger
ed073f0e62 Add prototype for foo. 2000-12-27 19:58:36 +00:00
Ulrich Drepper
20bb288327 Update.
* dlfcn/defaultmod1.c: Add prototypes to avoid warnings.
	* dlfcn/defaultmod2.c: Likewise.
	* dlfcn/dlopen.c: Likewise.
	* dlfcn/dlopenold.c: Likewise.
	* dlfcn/failtestmod.c: Likewise.
	* dlfcn/glreflib1.c: Likewise.
	* dlfcn/glreflib2.c: Likewise.
	* dlfcn/eval.c: Likewise.  Add attributes.

	* ctype/ctype-extn.c: Define isblank and not __isblank.
2000-11-29 00:04:54 +00:00
Ulrich Drepper
85857f932b Update.
2000-11-15  Jakub Jelinek  <jakub@redhat.com>

	* dlfcn/default.c (main): Add test for dladdr of main returning
	argv[0] in dli_fname field.

2000-11-15  Jakub Jelinek  <jakub@redhat.com>

	* Makeconfig (run-program-prefix): Move test-static test into the
	variable.

	* sysdeps/alpha/dl-machine.h (RTLD_START): Update _dl_argv.
	* sysdeps/sparc/sparc32/dl-machine.h (RTLD_START): Likewise,
	schedule instructions.
	* sysdeps/sparc/sparc64/dl-machine.h (RTLD_START): Likewise,
	schedule instructions, fix a bug in copying auxiliary data.

	* manual/startup.texi (Program Arguments): Fix type of main's envp
	parameter.
	Reported by Raúl Núñez de Arenas Coronado <dervishd@linuxfreak.com>.
2000-11-16 02:17:26 +00:00
Ulrich Drepper
3fe4001526 Update.
2000-09-16  Ulrich Drepper  <drepper@redhat.com>

	* dlfcn/Makefile (distribute): Add defaultmod1.c and defaultmod2.c.
	(test): Add default.
	(modules-names): Add defaultmod1 and defaultmod2.
	Add rules to build test objects.
2000-09-16 09:08:30 +00:00
Andreas Jaeger
00213fe406 Update.
2000-07-28  Andreas Jaeger  <aj@suse.de>

	* sysdeps/gnu/netinet/tcp.h: Add TCP options from Linux 2.4.

	* dlfcn/Makefile ($(objpfx)tst-dladdr): New.
	($(objpfx)tst-dladdr.out): new.
	(tests): Add tst-dladdr.
	($(objpfx)glrefmain): Use libdl.

	* dlfcn/tst-dladdr.c: New file.  Based on a test by Volkmar Sieh
	<vs@caldera.de>.
2000-07-28 08:13:51 +00:00
Ulrich Drepper
2f54c82dac Update.
* elf/Makefile (tests): Add nodlopen.  Add rules to generate nodlopen.
	* include/dlfcn.h: Define __RTLD_DLOPEN.
	* elf/dl-load.c (_dl_map_object_from_fd): If DF_1_NOOPEN is set
	and this is a dlopen() call, do not load the binary.
	* dlfcn/dlopen.c: Add __RTLD_DLOPEN to mode passed down to _dl_open.
	* dlfcn/dlopenold.c: Likewise.
	* configure.in: Add test for -z nodelete option.
	* config.make.in: Define have-z-nodelete with libc_cv_z_nodelete.

2000-07-20  Mark Kettenis  <kettenis@gnu.org>

	Make Hesiod NSS module thread-safe.

	* hesiod/README.hesiod: Update.

	* hesiod/Versions [GLIBC_2.2]: Add _nss_hesiod_getservbyport_r,
	_nss_hesiod_setprotoent, _nss_hesiod_endprotoent,
	_nss_hesiod_getprotobyname_r, and _nss_hesiod_getprotobynumber_r.
	* hesiod/Makefile (libnss_hesiod-routines): Add hesiod-init and
	hesiod-proto.
	* hesiod/nss_hesiod/hesiod-init.c: New file.
	* hesiod/nss_hesiod/hesiod-pwd.c: Rewritten for thread-safeness.
	* hesiod/nss_hesiod/hesiod-grp.c: Likewise.
	* hesiod/nss_hesiod/nss_hesiod.h: New file.
	* hesiod/nss_hesiod/hesiod-service.c
	(_nss_hesiod_getservbyport_r): New function.  Provide support for
	looking up services by port number.
	* hesiod/nss_hesiod/hesiod-proto.c: New file.

	* hesiod/hesiod.c: Update from BIND 8.2.3-T5B.
	* hesiod/hesiod.h: Likewise.
	* hesiod/hesiod_p.h: Likewise.

2000-07-20  Mark Kettenis  <kettenis@gnu.org>

	Fix problems with `struct __res_state' getting too big.
	* resolv/resolv.h (struct __sockaddr_in): New definition.
	(struct __res_state): Use __sockaddr_in instead of sockaddr_in in
	the private parts of the structure to save some space.
	* resolv/res_send.c (res_nsend): Cast &EXT(statp).nsaddrs[ns] to
	(struct sockaddr_in *) in call to sock_eq.
	Use memcpy to copy statp->nsaddr_list[ns] to &EXT(statp).nsaddrs[ns].

2000-07-20  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/mach/hurd/dl-sysdep.c: Likewise.
2000-07-21 04:12:25 +00:00
Ulrich Drepper
e6574c9ca2 Update.
2000-07-18 Kaz Kylheku <kaz@ashi.footprints.net>

	* spinlock.c (__pthread_alt_lock, __pthread_alt_timedlock): Fixed
	bug whereby thr field of waitnode structure would not be correctly
	set unless a null self pointer is passed to the functions.
	Eliminated redundant calls to thread_self().
2000-07-18 17:18:38 +00:00
Ulrich Drepper
ea1efc6f49 Update.
* dlfcn/dlerror.c (free_key_mem): Add cast to silence compiler warning.

2000-07-14  Mark Kettenis  <kettenis@gnu.org>
2000-07-14 20:37:48 +00:00
Ulrich Drepper
ca3c013564 Update.
* elf/Versions (ld): Export _dl_out_of_memory for GLIBC_2.2.
	* dlfcn/dlerror.c (dlerror): Don't free the error string if it is the
	report that we are out of memory.
	* elf/dl-deps.c (_dl_map_object_deps): Likewise.
	* elf/dl-libc.c (dlerror_run): Likewise.
	* elf/dl-open.c (_dl_open): Likewise.
	* elf/rtld.c (dl_main): Likewise.
	* elf/dl-error.c: Define _dl_out_of_memory.
	(_dl_signal_error): Return _dl_signal_error if we cannot duplicate
	the error string.
	* sysdeps/generic/ldsodefs.h: Declare _dl_out_of_memory.

	* dlfcn/dlerror.c (free_key_mem): Also free error string.

	* iconv/loop.c: Fix comment.
2000-07-13 19:46:27 +00:00
Ulrich Drepper
68eefde7b6 Update.
2000-07-03  Andreas Jaeger  <aj@suse.de>

	* dlfcn/Makefile (generated): New.
2000-07-03 23:41:50 +00:00
Ulrich Drepper
afa0569f3b Update.
* crypt/Makefile (distribute): Add ufc-crypt.h, crypt-private.h,
	ufc.c, speeds.c, README.ufc-crypt, and Banner.

	* sysdeps/sparc/Subdirs: New file.

	* locale/Makefile (distribute): Add weightwc.h and
	programs/localedef.h.

	* time/Makefile (distribute): Add datemsk.

	* sysdeps/ia64/Dist: Add softpipe.h.

	* sysdeps/unix/sysv/aix/Dist: New file.

	* posix/setpgrp.c: Moved to...
	* sysdeps/generic/setpgrp.c: ...here.  New file.
	* io/mknod.c: Moved to...
	* sysdeps/generic/mknod.c: ...here.  New file.

	* sysdeps/unix/sysv/linux/ia64/Dist: New file.

	* sysdeps/unix/sysv/linux/sparc/Dist: Add sys/procfs.h.

	* sysdeps/unix/sysv/linux/arm/Dist: Add oldgetrlimit64.c.

	* sysdeps/powerpc/Dist: Add fprrest.S, fprsave.S, gprsave1.S,
	gprsave0.S, gprrest1.S, and gprrest0.S.

	* sysdeps/generic/Dist: Add bp-thunks.h, bp-sym.h, and bp-start.h.

	* posix/Makefile (routines): Add spawnattr_getsigmask,
	spawnattr_getschedpolicy, spawnattr_getschedparam,
	spawnattr_setsigmask, spawnattr_setschedpolicy, and
	spawnattr_setschedparam.
	* posix/Versions: Add posix_spawnattr_getschedpolicy,
	posix_spawnattr_setschedpolicy, posix_spawnattr_getschedparam, and
	posix_spawnattr_setschedparam.

	* posix/spawnattr_setschedparam.c: Fix typo.

	* posix/spawnattr_setsigmask.c (posix_spawnattr_setsigmask):
	Correct typo.

	* login/programs/utmpd.c: Removed.
	* login/programs/utmpd.h: Removed.
	* login/programs/utmpd-private.h: Removed.

	* Makefile (distribute): Add include/db_185.h and include/db.h.

	* iconvdata/Makefile (distribute): Add iso-ir-165.c and
	iso-ir-165.h.

	* elf/Makefile (distribute): Add missing files.

	* dlfcn/Makefile: Add back rules to include eval in libdl.so.
	* elf/eval.c: Moved to...
	* dlfcn/eval.c: ...here.  New file.

	* Makefile (distribute): Also distribute ChangeLog.1?.
2000-06-14 00:55:24 +00:00
Ulrich Drepper
d743ba1e9b Update.
2000-06-09  H.J. Lu  <hjl@gnu.org>

	* dlfcn/dlerror.c (_dlerror_run): Set result->errstring to NULL
	after freeing it.

	* dlfcn/Makefile (distribute): Add failtestmod.c.
	(tests): Add failtest.
	Add rules to build and run failtest.
	* dlfcn/failtest.c: New file.
	* dlfcn/failtestmod.c: New file.
2000-06-10 04:31:24 +00:00
Ulrich Drepper
04470dc03e Update.
* dlfcn/dlerror.c (struct dl_action_result): Add objname member.
	(dlerror): Add objname to asprintf() parameters.
	(_dl_error_run): Pass new parameter to _dl_catch_error.
2000-06-10 04:06:58 +00:00
Ulrich Drepper
dec126b41a Update.
* dlfcn/dlfcn.h: Pretty print dladdr declaraction.

	* elf/rtld.c (process_envvars): Recognize LD_DYNAMIC_WEAK.
	(_dl_dynamic_weak): New variable.
	* elf/dl-support.c: Likewise.
	* sysdeps/generic/ldsodefs.h: Declare _dl_dynamic_weak.
	* elf/do-lookup.h: If we find a weak definition treat it like a
	normal symbol unless _dl_dynamic_weak is nonzero.  In the latter
	case treat it like before.
2000-06-08 03:03:00 +00:00
Ulrich Drepper
cf197e41e7 Update.
2000-04-02  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-fini.c (_dl_fini): Increment j counter after swapping in
	element at this position.

	* elf/Versions [ld.so] (GLIBC_2.2): Export _dl_load_lock.
	* elf/link.h (struct link_map): Add l_reldepsmax, l_reldepsact, and
	l_reldeps elements.
	* elf/dl-lookup.c (add_dependency): New function.
	(_dl_lookup_symbol): Use it whenever symbol was found in a global,
	dynamically loaded object.
	(_dl_lookup_symbol_skip): Likewise.
	(_dl_lookup_versioned_symbol): Likewise.
	(_dl_lookup_versioned_symbol_skip): Likewise.
	* elf/dl-open.c: Don't define _dl_load_lock here...
	* elf/rtld.c: ...but here...
	* elf/dl-support.c: ...and here.
	* elf/dl-close.c (_dl_close): Close also dependent objects introduce
	through relocation.
	* elf/dl-fini.c (_dl_fini): Also take dependencies introduced through
	relocations.
	* dlfcn/Makefile (glrefmain.out): Test is not expected to fail
	anymore.
	* dlfcn/glrefmain.c: Add one more debug message.

	* Makeconfig (preprocess-versions): Don't add $(CPPFLAGS) to compiler
	command line.
	* Makerules (sysd-versions): Use ( ) instead of { }.

	* elf/dl-load.c: Use __builtin_expect to signal that compiler should
	optimize for the non-debugging case.
	* elf/dl-lookup.c: Likewise.
	* sysdeps/generic/libc-start.c: Likewise.
2000-04-03 03:51:04 +00:00
Ulrich Drepper
ec79422d9e (glrefmain.out): Test is not expected to fail anymore. 2000-04-03 03:36:11 +00:00
Ulrich Drepper
4380ef5e29 Update.
* dlfcn/Makefile (distribute): Add glreflib1.c and glreflib2.c.
	(tests): Add glrefmain.
	Add rules to build modules and run tests.  Ignore result of glrefmain
	for now since it fails.
	* dlfcn/glrefmain.c: New file.
	* dlfcn/glreflib1.c: New file.
	* dlfcn/glreflib2.c: New file.

	* test-skeleton.c: Include <string.h> for strsignal prototype.
2000-04-01 21:49:24 +00:00
Roland McGrath
16710d5829 * dlfcn/dlopen.c: Use <shlib-compat.h> macros.
* dlfcn/dlopenold.c: Likewise.
	* nss/getXXbyYY_r.c: Likewise.
	* nss/getXXent_r.c: Likewise.
	* hurd/hurdinit.c: Likewise.
	* hurd/compat-20.c: Likewise.
	* libio/oldiofopen.c: Likewise.
	* libio/oldiofclose.c: Likewise.
	* libio/oldiofdopen.c: Likewise.
	* libio/oldfileops.c: Likewise.
	* libio/oldstdfiles.c: Likewise.
	* libio/oldiofsetpos.c: Likewise.
	* libio/oldiofgetpos.c: Likewise.
	* libio/oldiofgetpos64.c: Likewise.
	* libio/oldiofsetpos64.c: Likewise.
	* libio/oldiopopen.c: Likewise.
	* libio/oldpclose.c: Likewise.
	* libio/oldtmpfile.c: Likewise.
	* libio/freopen.c (freopen): Likewise.
	* libio/iofclose.c (_IO_new_fclose): Likewise.
2000-03-27 05:18:47 +00:00
Ulrich Drepper
a808d541c6 Update.
2000-02-28  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/start.c: Initialize __errno and add comment
	explaining why.  Remove K&R compatibility.

	* sysdeps/powerpc/fpu/s_isnan.c: Avoid using asm statement to
	declare aliases.

	* sysdeps/powerpc/Makefile: Always pass flags to compile for ppc
	and not rs6000.
	[$(subdir)=misc] (sysdep_routines): Add gprsave0, gprrest0,
	gprsave1 , and gprrest1.
	Don't pass special flags to compiler for init and gmon-start if
	this is no ELF platform.

	* sysdeps/mach/hurd/bits/statfs.h: Define _STATFS_F_NAMELEN.
	* sysdeps/unix/sysv/linux/bits/statfs.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/statfs.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/statfs.h: Likewise.
	* sysdeps/posix/fpathconf.c: Don't unconditionally use f_namelen
	in statfs.  Check feature macro and use f_name_max or NAME_MAX
	instead.
	* sysdeps/posix/pathconf.c: Likewise.

	* dlfcn/dlfcn.h: Remove DL_CALL_FCT definition here.
	* sysdeps/generic/bits/dlfcn.h: Define DL_CALL_FCT here.
	* sysdeps/mips/bits/dlfcn.h: Define DL_CALL_FCT here.
	* iconv/skeleton.c: If DL_CALL_FCT is not yet defined, add dumy
	definition here.

	* sysdeps/generic/libc-start.c: Fix typo in comment.

	* include/set-hooks.h: Allow systems to not define
	symbol_set_define.

	* configure.in: Unify machine names rs6000 and powerpc.
2000-02-28 21:16:38 +00:00
Ulrich Drepper
150ae52120 Update.
* dlfcn/dlopenold.c: Likewise.
2000-02-23 23:17:41 +00:00
Ulrich Drepper
b2b2891164 Update.
2000-02-23  Andreas Jaeger  <aj@suse.de>

	* dlfcn/dlopen.c: Include <stddef.h> for NULL.
	* dlfcn/dlsym.c: Likewise.
	* dlfcn/dlvsym.c: Likewise.
	* iconv/gconv.c: Likewise.
2000-02-23 22:15:49 +00:00
Ulrich Drepper
8ce9ea0ca6 Update.
* dlfcn/dlfcn.h (RTLD_DEFAULT): Don't use NULL.

	* iconv/iconv.h (iconv): Fix prototype.

	* misc/libgen.h: When using gcc using renaming feature to get XPG
	definition of basename.

	* misc/search.h (struct entry): Fix type of element data.

	* posix/unistd.h (getpagesize): Declare as const function.

	* sysdeps/unix/sysv/linux/alpha/bits/sigaction.h: Define SA_NOCLDWAIT.
	* sysdeps/unix/sysv/linux/bits/sigaction.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/sigaction.h: Likewise.

	* signal/signal.h [__USE_XOPEN]: Define uid_t.
	(sigstack): Correct type of first parameter.
	* sysdeps/generic/sigstack.c (sigstack): Likewise.
	* sysdeps/unix/sysv/linux/sigstack.c (sigstack): Likewise.

	* sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: New file.  Copy of
	old sysdeps/unix/sysv/linux/bits/siginfo.h.
	* sysdeps/unix/sysv/linux/sparc/sparc64/bits/siginfo.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/siginfo.h [struct siginfo] (si_band):
	Change type to `long int'.

	* signal/signal.h [__USE_XOPEN]: Declare sigpause to redirect to
	__xpg_sigpause.
	* sysdeps/generic/sigpause.c: Define __xpg_sigpause.
	* sysdeps/posix/sigpause.c: Likewise.

	* conform/conformtest.pl: Correct bugs.  Add more functionality.
	* conform/data/dlfcn.h-data: Correct typos.
	* conform/data/ftw.h-data: Likewise.
	* conform/data/iconv.h-data: Likewise.
	* conform/data/nl_types.h-data: Likewise.
	* conform/data/search.h-data: Likewise.
	* conform/data/semaphore.h-data: New file.
	* conform/data/setjmp.h-data: New file.
	* conform/data/signal.h-data: New file.
	* conform/data/stdarg.h-data: New file.
	* conform/data/stddef.h-data: New file.
	* conform/data/stdio.h-data: New file.
2000-02-23 06:02:09 +00:00
Ulrich Drepper
c1422e5b7c Update.
Patch by khendricks@ivey.uwo.ca [libc/1382].
1999-10-09 21:56:43 +00:00
Ulrich Drepper
70b2845f71 Update.
1999-08-18  Ulrich Drepper  <drepper@cygnus.com>

	* ctype/ctype.h: Avoid useless #endif #if pairs.

	* dirent/dirent.h: Define ino_t and ino64_t if not done already.
	(seekdir): Fix type of second parameter.
	* sysdeps/generic/seekdir.c: Likewise.
	* sysdeps/mach/hurd/seekdir.c: Likewise.
	* sysdeps/unix/seekdir.c: Likewise.

	* dlfcn/dlfcn.h: Define RTLD_NEXT and RTLD_DEFAULT only if __USE_GNU.
1999-08-18 18:44:33 +00:00
Ulrich Drepper
4f2793d41f Update.
1999-08-01  Ulrich Drepper  <drepper@cygnus.com>

	* elf/dl-sym.c (_dl_sym): Always determine module of the caller to
	pass it to _dl_lookup_symbol.

	* elf/dl-error.c (_dl_signal_error): Optimize string generation a
	bit.  Reword message.

	* dlfcn/dlerror.c: Make code thread-safe.
1999-08-01 19:24:38 +00:00
Ulrich Drepper
019e7a645a Update.
1999-07-09  Andreas Schwab  <schwab@suse.de>

	* elf/Makefile (headers): Remove bits/dlfcn.h and dlfcn.h.

	* dlfcn/Makefile (headers): Add bits/dlfcn.h.
1999-07-09 10:13:23 +00:00
Ulrich Drepper
94e365c612 Update.
* sysdeps/gnu/Makefile (libdl-routines): Add eval.

1999-07-06  Zack Weinberg  <zack@rabi.columbia.edu>

	* dlfcn: New directory.  Move the following files from elf:
	dladdr.c, dlclose.c, dlerror.c, dlfcn.h, dlopen.c,
	dlopenold.c, dlsym.c, dlvsym.c.
	* dlfcn/Makefile: New file.
	* dlfcn/Versions: New file.
	* dlfcn/dlsym.c: All ELF-specific code split out to new
	function _dl_sym.
	* dlfcn/dlvsym.c: All ELF-specific code split out to new
	function _dl_vsym.
	* elf/dl-sym.c: New file.  _dl_sym and _dl_vsym are
	implemented here.

	* dlfcn/dladdr.c: Remove all references to ELF data structures
	or headers.
	* dlfcn/dlclose.c: Likewise.
	* dlfcn/dlerror.c: Likewise.
	* dlfcn/dlopen.c: Likewise.
	* dlfcn/dlopenold.c: Likewise.

	* Makeconfig (dlfcn): New variable - set to `dlfcn' if elf is
	yes, empty otherwise.
	(libdl): Set to dlfcn/libdl.so or libdl.a if elf is yes,
	depending on build-shared.
	(subdirs): Add $(dlfcn).
	(rpath-dirs): Add dlfcn.
	* elf/Makefile: Remove all references to libdl or its
	components, except the ones relating to the test cases.
	(routines): Add dl-sym.
	* elf/Versions (libc): Add _dl_sym and _dl_vsym for GLIBC_2.2.
	(libdl): Delete.

	* elf/dl-close.c (_dl_close): Change argument to void *.
	* elf/dl-open.c (_dl_open): Change return type to void *.
	* elf/eval.c: Removed.
	* elf/ldsodefs.h: Move prototypes of _dl_catch_error,
	_dlerror_run, _dl_open, _dl_close, _dl_addr, and
	_dl_mcount_wrapper_check to include/dlfcn.h.  Delete
	_CALL_DL_FCT macro.
	* include/dlfcn.h: Also prototype _dl_sym and _dl_vsym here.
	Include real header from dlfcn directory.
	* include/ldsodefs.h: Removed.

	* grp/initgroups.c: Use DL_CALL_FCT not _CALL_DL_FCT.
	* nss/getXXbyYY_r.c: Likewise.
	* nss/getXXent_r.c: Likewise.
	* iconv/gconv.c: Likewise.  Don't include ldsodefs.h.
	* iconv/gconv_db.c: Likewise.  Don't include ldsodefs.h.
	* iconv/skeleton.c: Don't include ldsodefs.h.
	* nss/nsswitch.h: Don't include ldsodefs.h.  Include dlfcn.h.

1999-07-07  Ulrich Drepper  <drepper@cygnus.com>
1999-07-07 18:39:33 +00:00