freebsd-src/lib
Brian Feldman 4524204190 Fix the problems I (and others, undoubtedly) have been having for a
while with threaded software in -CURRENT acting very "weird".  It has
seemed, for example, in Mozilla that threads attempting to do host
lookups have been locking up.  That's exactly the case.

There was a race condition in the implementation of the initialization
of the mutex used to protect FILE operations, first of all: multiple
instances of FLOCKFILE() in libc could occur on the same FILE at
the same time and cause strange behavior by overwriting eachothers'
creation of the mutex and the rest of the file lock.

Secondly, it's not appropriate to test the "validity" of the file
descriptor referenced by the FILE; if the code is calling FLOCKFILE()
or FUNLOCKFILE(), it wants the FILE to be locked or unlocked, not
to be locked or unlocked on the condition that _file is >= 0.  This
also could quite easily cause leaks by failing to perform the lock or
unlock operation when it actually is needed.

Mozilla now works again on -CURRENT when linked to libc_r.so.5 and
libc.so.5.
2001-02-23 04:59:12 +00:00
..
compat Only build the compat libs appropiate for the target machine. 2001-02-14 20:49:54 +00:00
csu Add rcsid's. 2001-01-04 10:37:25 +00:00
libalias Add a few ``const''s to silence some -Wwrite-strings warnings 2001-01-29 11:44:13 +00:00
libatm Replace beforeinstall target with new variables used by .mk system. 2000-01-14 07:57:47 +00:00
libbind Build more components to get named to build. 1999-11-30 04:40:54 +00:00
libc Fix the problems I (and others, undoubtedly) have been having for a 2001-02-23 04:59:12 +00:00
libc_r Remove (int) file descriptor locking. It should be up to the 2001-02-11 22:07:32 +00:00
libcalendar mdoc(7) police: fixed broken references. 2001-01-16 11:52:00 +00:00
libcam mdoc(7) police: removed history info from the .Os FreeBSD call. 2000-12-14 11:52:05 +00:00
libcom_err Replace beforeinstall target with new variables used by .mk system. 2000-01-14 07:57:47 +00:00
libcompat mdoc(7) police: split punctuation characters + misc fixes. 2001-02-01 16:38:02 +00:00
libcrypt Prepare for mdoc(7)NG. 2000-12-29 14:08:20 +00:00
libdevstat mdoc(7) police: split punctuation characters + misc fixes. 2001-02-01 16:38:02 +00:00
libdisk Fixed bitrot in prototype(s) in synopsis. 2001-02-05 23:56:05 +00:00
libedit mdoc(7) police: split punctuation characters + misc fixes. 2001-02-01 16:38:02 +00:00
libfetch mdoc(7) police: fixed broken references. 2001-01-16 11:52:00 +00:00
libform Install manpages, including appropriate MLINKS. 2000-12-05 12:38:23 +00:00
libftpio Fixed wrong return type for ftpLoginAf() in synopsis. 2001-02-05 23:58:59 +00:00
libgnumalloc $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libio Add `_PATH_DEVZERO'. 2000-12-09 09:35:55 +00:00
libipsec mdoc(7) police: split punctuation characters + misc fixes. 2001-02-01 16:38:02 +00:00
libipx Correct comment typos 2001-02-20 10:23:10 +00:00
libisc Add list.h to the to be installed header files. 2001-02-06 22:27:16 +00:00
libkse Remove (int) file descriptor locking. It should be up to the 2001-02-11 22:07:32 +00:00
libkvm Catch up to new priority interface. 2001-02-12 00:21:38 +00:00
libm mdoc(7) police: Change -filled displays (which just happen 2001-02-07 13:45:30 +00:00
libmd mdoc(7) police: removed history info from the .Os FreeBSD call. 2000-12-14 11:52:05 +00:00
libmenu Install manpages, including appropriate MLINKS. 2000-12-05 12:38:23 +00:00
libncp Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
libncurses Add some missing functions in MLINKS. Link assume_default_colors.3 2000-12-05 12:40:14 +00:00
libnetgraph mdoc(7) police: removed history info from the .Os FreeBSD call. 2000-12-14 11:52:05 +00:00
libopie Add some extra functions adapted from OpenBSD, in preparation for 2000-05-15 04:20:54 +00:00
libpam Use a unified libgcc rather than a seperate one for threaded and 2001-01-06 18:59:46 +00:00
libpanel Install manpages, including appropriate MLINKS. 2000-12-05 12:38:23 +00:00
libpcap Don't try to compile in INET6 support when NOINET6 is defined. 2000-04-15 20:45:52 +00:00
libposix1e Fix typo: seperate -> separate. 2001-02-06 10:39:38 +00:00
libpthread Remove (int) file descriptor locking. It should be up to the 2001-02-11 22:07:32 +00:00
libradius Prepare for mdoc(7)NG. 2000-12-29 14:08:20 +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 man(7) -> mdoc(7). 2001-01-12 18:01:17 +00:00
libsmdb Add a MAINTAINER= line so people know who to blame 2000-10-26 23:02:36 +00:00
libsmutil Add a MAINTAINER= line so people know who to blame 2000-10-26 23:02:36 +00:00
libss Add `_PATH_DEVZERO'. 2000-12-09 09:35:55 +00:00
libstand Prepare for mdoc(7)NG. 2001-02-22 15:03:09 +00:00
libtacplus Use Fx macro wherever possible. 2000-11-14 11:20:58 +00:00
libtelnet $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libusb Fixed prototypes. About half of them were wrong (mainly due to const 2001-02-06 01:02:59 +00:00
libusbhid Fixed prototypes. About half of them were wrong (mainly due to const 2001-02-06 01:02:59 +00:00
libutil Fix typo: seperate -> separate. 2001-02-06 10:39:38 +00:00
libvgl Don't hardcode geometry of VESA_800x600 raster text mode (80x25). Instead save 2001-01-25 16:58:46 +00:00
libwrap Replace strtok with strsep (strtok is not allowed in libraries) 2000-08-30 06:26:42 +00:00
libxpg4 Bump major to preserve 3.x binaries compatibility 2000-06-13 00:41:38 +00:00
liby $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
libz Fix typo: compatability -> compatibility. 2001-02-06 12:05:58 +00:00
msun mdoc(7) police: Change -filled displays (which just happen 2001-02-07 13:45:30 +00:00
ncurses Add some missing functions in MLINKS. Link assume_default_colors.3 2000-12-05 12:40:14 +00:00
Makefile There are now compat libs for the Alpha too. 2001-02-10 07:07:09 +00:00
Makefile.inc