]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
mbedtls_threadlock: avoid calloc, use array
authorDaniel Stenberg <daniel@haxx.se>
Thu, 27 Nov 2025 16:42:55 +0000 (17:42 +0100)
committerDaniel Stenberg <daniel@haxx.se>
Thu, 27 Nov 2025 17:09:14 +0000 (18:09 +0100)
Closes #19732

lib/vtls/mbedtls_threadlock.c

index ed70308b739d7057c2d2360c27d74d8f0df7c174..82590929cd788b97f9d5e495046a7aa298fe69c9 100644 (file)
 /* number of thread locks */
 #define NUMT                    2
 
-/* This array will store all of the mutexes available to Mbedtls. */
-static MBEDTLS_MUTEX_T *mutex_buf = NULL;
+/* This array stores the mutexes available to Mbedtls */
+static MBEDTLS_MUTEX_T mutex_buf[NUMT];
 
 int Curl_mbedtlsthreadlock_thread_setup(void)
 {
   int i;
 
-  mutex_buf = calloc(1, NUMT * sizeof(MBEDTLS_MUTEX_T));
-  if(!mutex_buf)
-    return 0;     /* error, no number of threads defined */
-
   for(i = 0;  i < NUMT;  i++) {
 #if defined(USE_THREADS_POSIX) && defined(HAVE_PTHREAD_H)
     if(pthread_mutex_init(&mutex_buf[i], NULL))
@@ -73,9 +69,6 @@ int Curl_mbedtlsthreadlock_thread_cleanup(void)
 {
   int i;
 
-  if(!mutex_buf)
-    return 0; /* error, no threads locks defined */
-
   for(i = 0; i < NUMT; i++) {
 #if defined(USE_THREADS_POSIX) && defined(HAVE_PTHREAD_H)
     if(pthread_mutex_destroy(&mutex_buf[i]))
@@ -85,8 +78,6 @@ int Curl_mbedtlsthreadlock_thread_cleanup(void)
       return 0; /* CloseHandle failed */
 #endif /* USE_THREADS_POSIX && HAVE_PTHREAD_H */
   }
-  free(mutex_buf);
-  mutex_buf = NULL;
 
   return 1; /* OK */
 }