]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/schema.c
Fix prev commit
[openldap] / servers / slapd / schema.c
index f99fb5d37dfd62624de89eaeaa1cb9b0da8453dd..72340523eee60eb94160b210e55ebc05fbb218da 100644 (file)
@@ -2,7 +2,7 @@
 /* $OpenLDAP$ */
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *
- * Copyright 1998-2003 The OpenLDAP Foundation.
+ * Copyright 1998-2004 The OpenLDAP Foundation.
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -132,6 +132,9 @@ schema_info( Entry **entry, const char **text )
 
        {
                struct          tm *ltm;
+#ifdef HAVE_GMTIME_R
+               struct          tm ltm_buf;
+#endif
                char            timebuf[ LDAP_LUTIL_GENTIME_BUFSIZE ];
 
                /*
@@ -145,10 +148,16 @@ schema_info( Entry **entry, const char **text )
                 * AND modified at server startup time ...
                 */
 
+#ifdef HAVE_GMTIME_R
+               ltm = gmtime_r( &starttime, &ltm_buf );
+#else
                ldap_pvt_thread_mutex_lock( &gmtime_mutex );
                ltm = gmtime( &starttime );
+#endif /* HAVE_GMTIME_R */
                lutil_gentime( timebuf, sizeof(timebuf), ltm );
+#ifndef HAVE_GMTIME_R
                ldap_pvt_thread_mutex_unlock( &gmtime_mutex );
+#endif
 
                vals[0].bv_val = timebuf;
                vals[0].bv_len = strlen( timebuf );