{
if ( csn == NULL ) return LDAP_OTHER;
-#ifndef HAVE_GMTIME_R
+ /* gmtime doesn't always need a mutex, but lutil_csnstr does */
ldap_pvt_thread_mutex_lock( &gmtime_mutex );
-#endif
csn->bv_len = lutil_csnstr( csn->bv_val, csn->bv_len, slap_serverID, 0 );
-#ifndef HAVE_GMTIME_R
ldap_pvt_thread_mutex_unlock( &gmtime_mutex );
-#endif
if ( manage_ctxcsn )
slap_queue_csn( op, csn );
ldap_pvt_thread_pool_t connection_pool;
int connection_pool_max = SLAP_MAX_WORKER_THREADS;
int slap_tool_thread_max = 1;
-#ifndef HAVE_GMTIME_R
ldap_pvt_thread_mutex_t gmtime_mutex;
-#endif
slap_counters_t slap_counters;
}
#endif /* SLAPD_MONITOR */
-#ifndef HAVE_GMTIME_R
ldap_pvt_thread_mutex_init( &gmtime_mutex );
-#endif
slap_passwd_init();
rc = slap_sasl_init();
const char* file_name,
int argc, char *argv[] ));
LDAP_SLAPD_F (int) module_path LDAP_P(( const char* path ));
+LDAP_SLAPD_F (int) module_unload LDAP_P(( const char* file_name ));
-LDAP_SLAPD_F (void) *module_resolve LDAP_P((
+LDAP_SLAPD_F (void *) module_handle LDAP_P(( const char* file_name ));
+
+LDAP_SLAPD_F (void *) module_resolve LDAP_P((
const void *module, const char *name));
#endif /* SLAPD_MODULES */
LDAP_SLAPD_V (ldap_pvt_thread_mutex_t) entry2str_mutex;
LDAP_SLAPD_V (ldap_pvt_thread_mutex_t) replog_mutex;
-#ifndef HAVE_GMTIME_R
LDAP_SLAPD_V (ldap_pvt_thread_mutex_t) gmtime_mutex;
-#endif
LDAP_SLAPD_V (ldap_pvt_thread_mutex_t) ad_undef_mutex;
LDAP_SLAPD_V (ldap_pvt_thread_mutex_t) oc_undef_mutex;