freebsd-src/lib
John Polstra 3600eb76c6 Work around an assert failure in the dynamic linker's default thread
locking functions.  If an application loads a shared object with
dlopen() and the shared object has an init function which requires
lazy binding, then _rtld_bind is called when the thread is already
inside the dynamic linker.  This leads to a recursive acquisition
of the lock, which I was not expecting -- hence the assert failure.

This work-around makes the default locking functions handle recursive
locking.  It is NOT the correct fix -- that should be implemented
at the generic locking level rather than in the default locking
functions.  I will implement the correct fix in a future commit.

Since the dllockinit() interface will likely need to change, warn
about that in both the man page and the header file.
1999-12-28 04:38:17 +00:00
..
compat What was I smoking? Use the proper form of the library names. 1999-12-21 06:19:03 +00:00
csu $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libalias Fix a '&&' that should have been a '&'. 1999-12-10 20:04:53 +00:00
libatm $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libbind Build more components to get named to build. 1999-11-30 04:40:54 +00:00
libc Work around an assert failure in the dynamic linker's default thread 1999-12-28 04:38:17 +00:00
libc_r Fixed bitrot in synopsis. The change from "int *pshared" to "int pshared" 1999-12-23 16:51:27 +00:00
libcalendar $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libcam Fix a file descriptor leak in cam_open_btl(). The xpt device was opened, 1999-09-12 19:40:20 +00:00
libcom_err Zap $Source$ 1999-09-06 07:41:34 +00:00
libcompat Aargh, the $FreeBSD$ check caused an inconsistent commit by rejecting 1999-12-22 13:49:14 +00:00
libcrypt Fixed a formatting error in the prototype for crypt(). 1999-12-23 16:53:18 +00:00
libdevstat Clarify what getdevs() expects as input. 1999-09-23 06:36:02 +00:00
libdisk Just on the off-chance that somebody might use libdisk in a totally 1999-12-22 19:06:29 +00:00
libedit Fix style bugs 1999-10-03 10:41:40 +00:00
libfetch $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libform Add bmake glue for libform (the SVSV-style ETI curses form driver from 1999-09-05 05:37:49 +00:00
libftpio Fix style bugs and ordering 1999-10-03 10:40:11 +00:00
libgnumalloc $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libio $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libipx $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libkse Fix some minor POSIX/SUSv2 compliance nits. 1999-12-18 01:00:42 +00:00
libkvm Use kldsym(2) to lookup symbol values. This avoids the kvm_mkdb juggling 1999-12-27 07:14:58 +00:00
libm ${MACHINE} -> ${MACHINE_ARCH} 1999-11-14 13:54:44 +00:00
libmd $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libmenu Add bmake glue for libmenu (the SVSV-style ETI curses menu driver from 1999-09-05 05:32:46 +00:00
libncp Repo copy ncp_cfg.h ncp_lib.h ncp_file.h ncp_rcfile.h from here to 1999-11-12 15:09:58 +00:00
libncurses Make sure curses.h is generated when making build-tools make_keys 1999-12-20 10:37:55 +00:00
libnetgraph Manual page style work. 1999-12-21 01:25:21 +00:00
libopie $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libpam Add the PAM SSH RSA key authentication module. For example, you can add, 1999-11-29 07:09:44 +00:00
libpanel Add bmake glue for libpanel (the SVSV-style ETI curses panel (overlapping 1999-09-05 05:36:12 +00:00
libpcap $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libpthread Fixed bitrot in synopsis. The change from "int *pshared" to "int pshared" 1999-12-23 16:51:27 +00:00
libradius Add support for RADIUS accounting. Note, this changes the format 1999-10-31 04:47:59 +00:00
libresolv Don't build elf libresolv.so*, no elf freebsd binaries have used it ever. 1998-10-11 04:21:56 +00:00
librpcsvc $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libskey Add $FreeBSD$ lines to man pages that are missing them to make it 1999-08-28 23:10:20 +00:00
libss sigset_t change (part 5 of 5) 1999-09-29 15:18:46 +00:00
libstand Tidy up some loose ends. nullfs_read/write were returning the wrong value. 1999-12-27 08:45:14 +00:00
libtacplus $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libtelnet $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libutil Fix a bug where a pointer would be one character too far after putting 1999-12-21 10:17:36 +00:00
libvgl Fixed missing #include in synopsis. 1999-12-23 16:56:27 +00:00
libwrap $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libxpg4 I have added the support for BIG5 encoding into libc/libxpg4/mklocale. 1998-08-15 12:51:49 +00:00
liby $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libz Hard-configure z_off_t as long. Soft configuration using HAVE_UNISTD_H 1999-10-09 11:31:50 +00:00
msun style fix 1999-11-09 00:18:22 +00:00
ncurses Make sure curses.h is generated when making build-tools make_keys 1999-12-20 10:37:55 +00:00
Makefile Turn libbind back on, it should be ok now. 1999-11-30 06:13:10 +00:00
Makefile.inc