* top-level directory of the distribution or, alternatively, at
* <http://www.OpenLDAP.org/license.html>.
*/
+/* This work was initially developed by Kurt D. Zeilenga for inclusion
+ * in OpenLDAP Software. Additional significant contributors include:
+ * Stuart Lynne
+ */
/*
-** This is an improved implementation of Reader/Writer locks does
-** not protect writers from starvation. That is, if a writer is
-** currently waiting on a reader, any new reader will get
-** the lock before the writer.
-**
-** Does not support cancellation nor does any status checking.
-*/
+ * This is an improved implementation of Reader/Writer locks does
+ * not protect writers from starvation. That is, if a writer is
+ * currently waiting on a reader, any new reader will get
+ * the lock before the writer.
+ *
+ * Does not support cancellation nor does any status checking.
+ */
/* Adapted from publically available examples for:
* "Programming with Posix Threads"
* by David R Butenhof, Addison-Wesley
* top-level directory of the distribution or, alternatively, at
* <http://www.OpenLDAP.org/license.html>.
*/
+/* This work was initially developed by Jong Hyuk Choi for inclusion
+ * in OpenLDAP Software.
+ */
#include "portable.h"
* top-level directory of the distribution or, alternatively, at
* <http://www.OpenLDAP.org/license.html>.
*/
+/* This work was initially developed by Luke Howard for inclusion
+ * in U-MICH LDAP 3.3.
+ */
#include "portable.h"
#if defined( HAVE_MACH_CTHREADS )
#include "ldap_pvt_thread.h"
-/***********************************************************************
- * *
- * under NEXTSTEP or OPENSTEP use CThreads *
- * lukeh@xedoc.com.au *
- * *
- ***********************************************************************/
-
int
ldap_int_thread_initialize( void )
{