]> git.sur5r.net Git - openldap/commitdiff
Import unprotected strtok fix from -devel. Yes, you have to edit 8 files
authorKurt Zeilenga <kurt@openldap.org>
Fri, 1 Jan 1999 23:03:48 +0000 (23:03 +0000)
committerKurt Zeilenga <kurt@openldap.org>
Fri, 1 Jan 1999 23:03:48 +0000 (23:03 +0000)
to add a simple mutex.  Should be two (proto-slap.h & init.c).

servers/slapd/charray.c
servers/slapd/init.c
servers/slapd/main.c
servers/slapd/proto-slap.h
servers/slapd/tools/ldbmtest.c
servers/slapd/tools/ldif2id2children.c
servers/slapd/tools/ldif2id2entry.c
servers/slapd/tools/ldif2index.c
servers/slapd/tools/ldif2ldbm.c

index c2eb56ceaa06b5c57acc202d96c02be05f2a6107..e3974e4ac05662ee3758b78cefdc1d40e7ff2e20 100644 (file)
@@ -128,10 +128,16 @@ str2charray( char *str, char *brkstr )
 
        res = (char **) ch_malloc( (i + 1) * sizeof(char *) );
        i = 0;
+
+       pthread_mutex_lock(&strtok_mutex);
+
        for ( s = strtok( str, brkstr ); s != NULL; s = strtok( NULL,
            brkstr ) ) {
                res[i++] = ch_strdup( s );
        }
+
+       pthread_mutex_unlock(&strtok_mutex);
+
        res[i] = NULL;
 
        free( str );
index e93479432cbb9e3e26eb9c62c5f4379f73772d85..5921fd59f85c48af1c608dddb114eed0533baec5 100644 (file)
@@ -17,6 +17,7 @@ init( void )
        pthread_mutex_init( &active_threads_mutex, pthread_mutexattr_default );
        pthread_mutex_init( &new_conn_mutex, pthread_mutexattr_default );
        pthread_mutex_init( &currenttime_mutex, pthread_mutexattr_default );
+       pthread_mutex_init( &strtok_mutex, pthread_mutexattr_default );
        pthread_mutex_init( &entry2str_mutex, pthread_mutexattr_default );
        pthread_mutex_init( &replog_mutex, pthread_mutexattr_default );
        pthread_mutex_init( &ops_mutex, pthread_mutexattr_default );
index 106617fa06f4924021837f7c4980f52153a1cf35..b06198a62d5db519418dc679c6a1dfeee9482a44 100644 (file)
@@ -36,6 +36,7 @@ char          **g_argv;
  */
 time_t         currenttime;
 pthread_mutex_t        currenttime_mutex;
+pthread_mutex_t        strtok_mutex;
 int            active_threads;
 pthread_mutex_t        active_threads_mutex;
 pthread_mutex_t        new_conn_mutex;
index 61c9f45aae4ec3e62a466fd28510c2ea3ec35bf2..382f2dbe034652ec3128ea7d2997a056d235844b 100644 (file)
@@ -241,6 +241,7 @@ extern long         ops_completed;
 extern long            ops_initiated;
 extern pthread_mutex_t active_threads_mutex;
 extern pthread_mutex_t currenttime_mutex;
+extern pthread_mutex_t strtok_mutex;
 extern pthread_mutex_t entry2str_mutex;
 extern pthread_mutex_t new_conn_mutex;
 extern pthread_mutex_t num_sent_mutex;
index 0868b97d0c7b9f5ede3db0ae0524bc56be28e3ef..70989a013a891389864bed0c6fb1484a994444e9 100644 (file)
@@ -49,6 +49,7 @@ pthread_mutex_t       entry2str_mutex;
 pthread_mutex_t        active_threads_mutex;
 pthread_mutex_t        new_conn_mutex;
 pthread_mutex_t        currenttime_mutex;
+pthread_mutex_t        strtok_mutex;
 pthread_mutex_t        replog_mutex;
 pthread_mutex_t        ops_mutex;
 pthread_mutex_t        regex_mutex;
index 07e2b616382818d52729f3c634db5d167e455fcf..42639726f943e4ad0356e9607c711c25dbef0e4a 100644 (file)
@@ -31,6 +31,7 @@ pthread_mutex_t       entry2str_mutex;
 pthread_mutex_t        active_threads_mutex;
 pthread_mutex_t        new_conn_mutex;
 pthread_mutex_t        currenttime_mutex;
+pthread_mutex_t        strtok_mutex;
 pthread_mutex_t        replog_mutex;
 pthread_mutex_t        ops_mutex;
 pthread_mutex_t        regex_mutex;
index 391988207f5e8e448536df38489e7e43a20e9ee6..9ba4b71e589437cdfaa0cb2a10170538c081a721 100644 (file)
@@ -28,6 +28,7 @@ pthread_mutex_t       entry2str_mutex;
 pthread_mutex_t        active_threads_mutex;
 pthread_mutex_t        new_conn_mutex;
 pthread_mutex_t        currenttime_mutex;
+pthread_mutex_t        strtok_mutex;
 pthread_mutex_t        replog_mutex;
 pthread_mutex_t        ops_mutex;
 pthread_mutex_t        regex_mutex;
index ab05644cbc1e683f34f3e4bc243a059c367a901b..a14ecae663dc6014dad466d26417b5ae30fda6ad 100644 (file)
@@ -30,6 +30,7 @@ pthread_mutex_t       entry2str_mutex;
 pthread_mutex_t        active_threads_mutex;
 pthread_mutex_t        new_conn_mutex;
 pthread_mutex_t        currenttime_mutex;
+pthread_mutex_t        strtok_mutex;
 pthread_mutex_t        replog_mutex;
 pthread_mutex_t        ops_mutex;
 pthread_mutex_t        regex_mutex;
index c55cd20c3a02a9f45b885f9b8df55ff244406d72..b80a18c943c2e7486504893952b4bcb2d81a5cc1 100644 (file)
@@ -34,6 +34,7 @@ pthread_mutex_t       entry2str_mutex;
 pthread_mutex_t        active_threads_mutex;
 pthread_mutex_t        new_conn_mutex;
 pthread_mutex_t        currenttime_mutex;
+pthread_mutex_t        strtok_mutex;
 pthread_mutex_t        replog_mutex;
 pthread_mutex_t        ops_mutex;
 pthread_mutex_t        regex_mutex;