]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
polarssl threadlock cleanup
authorYang Tse <yangsita@gmail.com>
Tue, 19 Feb 2013 12:11:55 +0000 (13:11 +0100)
committerYang Tse <yangsita@gmail.com>
Tue, 19 Feb 2013 12:11:55 +0000 (13:11 +0100)
lib/Makefile.inc
lib/polarssl.c
lib/polarssl_threadlock.c [moved from lib/polarsslthreadlock.c with 89% similarity, mode: 0644]
lib/polarssl_threadlock.h [moved from lib/polarsslthreadlock.h with 65% similarity, mode: 0644]

index 96b32280affbc90725da8f82ed43282283b8503f..db059736502d2288ed8ab11f6eea2949fc7c6a06 100644 (file)
@@ -20,7 +20,7 @@ CSOURCES = file.c timeval.c base64.c hostip.c progress.c formdata.c   \
   qssl.c rawstr.c curl_addrinfo.c socks_gssapi.c socks_sspi.c          \
   curl_sspi.c slist.c nonblock.c curl_memrchr.c imap.c pop3.c smtp.c   \
   pingpong.c rtsp.c curl_threads.c warnless.c hmac.c polarssl.c                \
-  polarsslthreadlock.c curl_rtmp.c openldap.c curl_gethostname.c       \
+  polarssl_threadlock.c curl_rtmp.c openldap.c curl_gethostname.c      \
   gopher.c axtls.c idn_win32.c http_negotiate_sspi.c cyassl.c          \
   http_proxy.c non-ascii.c asyn-ares.c asyn-thread.c curl_gssapi.c     \
   curl_ntlm.c curl_ntlm_wb.c curl_ntlm_core.c curl_ntlm_msgs.c         \
@@ -39,7 +39,7 @@ HHEADERS = arpa_telnet.h netrc.h file.h timeval.h qssl.h hostip.h     \
   tftp.h sockaddr.h splay.h strdup.h socks.h ssh.h nssg.h curl_base64.h        \
   rawstr.h curl_addrinfo.h curl_sspi.h slist.h nonblock.h              \
   curl_memrchr.h imap.h pop3.h smtp.h pingpong.h rtsp.h curl_threads.h \
-  warnless.h curl_hmac.h polarssl.h polarsslthreadlock.h curl_rtmp.h   \
+  warnless.h curl_hmac.h polarssl.h polarssl_threadlock.h curl_rtmp.h  \
   curl_gethostname.h gopher.h axtls.h cyassl.h http_proxy.h non-ascii.h        \
   asyn.h curl_ntlm.h curl_gssapi.h curl_ntlm_wb.h curl_ntlm_core.h     \
   curl_ntlm_msgs.h curl_sasl.h curl_schannel.h curl_multibyte.h                \
index dd78bc690f82b53bdb1adcb5145d2e372a942171..d2a86f91b8cf6c2b20dace56d02a6f0f7658b89d 100644 (file)
@@ -5,8 +5,8 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 2010, 2011, Hoi-Ho Chan, <hoiho.chan@gmail.com>
- * Copyright (C) 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2010 - 2011, Hoi-Ho Chan, <hoiho.chan@gmail.com>
+ * Copyright (C) 2012 - 2013, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
 #include "connect.h" /* for the connect timeout */
 #include "select.h"
 #include "rawstr.h"
-
-/* apply threading? */
-#if defined(USE_THREADS_POSIX) || defined(USE_THREADS_WIN32)
-#define THREADING_SUPPORT
 #include "polarsslthreadlock.h"
-#endif /* USE_THREADS_POSIX || USE_THREADS_WIN32 */
 
 #define _MPRINTF_REPLACE /* use our functions only */
 #include <curl/mprintf.h>
 /* The last #include file should be: */
 #include "memdebug.h"
 
+/* apply threading? */
+#if defined(USE_THREADS_POSIX) || defined(USE_THREADS_WIN32)
+#define THREADING_SUPPORT
+#endif
+
 #if defined(THREADING_SUPPORT) && POLARSSL_VERSION_NUMBER>0x01010000
 static entropy_context entropy;
 
@@ -695,18 +695,12 @@ Curl_polarssl_connect(struct connectdata *conn,
  */
 int polarssl_init(void)
 {
-#ifdef THREADING_SUPPORT
   return polarsslthreadlock_thread_setup();
-#else /* THREADING_SUPPORT */
-  return 1;
-#endif /* THREADING_SUPPORT */
 }
 
 void polarssl_cleanup(void)
 {
-#ifdef THREADING_SUPPORT
-  polarsslthreadlock_thread_cleanup();
-#endif /* THREADING_SUPPORT */
+  (void)polarsslthreadlock_thread_cleanup();
 }
 
 #endif /* USE_POLARSSL */
old mode 100755 (executable)
new mode 100644 (file)
similarity index 89%
rename from lib/polarsslthreadlock.c
rename to lib/polarssl_threadlock.c
index 46d1778..ad18715
@@ -6,7 +6,7 @@
  *                             \___|\___/|_| \_\_____|
  *
  * Copyright (C) 2010, 2011, Hoi-Ho Chan, <hoiho.chan@gmail.com>
- * Copyright (C) 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2013, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
  * KIND, either express or implied.
  *
  ***************************************************************************/
-
-#include <stdio.h>
 #include "curl_setup.h"
 
 #if defined(USE_POLARSSL) && \
     (defined(USE_THREADS_POSIX) || defined(USE_THREADS_WIN32))
 
 #if defined(USE_THREADS_POSIX)
-#ifdef HAVE_PTHREAD_H
-#include <pthread.h>
-#define MUTEX_TYPE       pthread_mutex_t
-#endif /* HAVE_PTHREAD_H */
+#  ifdef HAVE_PTHREAD_H
+#    include <pthread.h>
+#  endif
 #elif defined(USE_THREADS_WIN32)
-#ifdef HAVE_PROCESS_H
-#include <process.h>
-#define MUTEX_TYPE       HANDLE
-#endif /* HAVE_PROCESS_H */
-#endif /* USE_THREADS_POSIX */
+#  ifdef HAVE_PROCESS_H
+#    include <process.h>
+#  endif
+#endif
+
+#include "polarssl_threadlock.h"
 
-#include "polarsslthreadlock.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
 
 #include "curl_memory.h"
 /* The last #include file should be: */
 #define NUMT                    2
 
 /* This array will store all of the mutexes available to PolarSSL. */
-static MUTEX_TYPE *mutex_buf = NULL;
+static POLARSSL_MUTEX_T *mutex_buf = NULL;
 
 int polarsslthreadlock_thread_setup(void)
 {
   int i;
   int ret;
 
-  mutex_buf = malloc(NUMT * sizeof(MUTEX_TYPE));
+  mutex_buf = malloc(NUMT * sizeof(POLARSSL_MUTEX_T));
   if(!mutex_buf)
     return 0;     /* error, no number of threads defined */
 
old mode 100755 (executable)
new mode 100644 (file)
similarity index 65%
rename from lib/polarsslthreadlock.h
rename to lib/polarssl_threadlock.h
index c793222..b67b3f9
@@ -1,5 +1,5 @@
-#ifndef HEADER_CURL_POLARSSLTHREADLOCK_H
-#define HEADER_CURL_POLARSSLTHREADLOCK_H
+#ifndef HEADER_CURL_POLARSSL_THREADLOCK_H
+#define HEADER_CURL_POLARSSL_THREADLOCK_H
 /***************************************************************************
  *                                  _   _ ____  _
  *  Project                     ___| | | |  _ \| |
@@ -8,6 +8,7 @@
  *                             \___|\___/|_| \_\_____|
  *
  * Copyright (C) 2010, Hoi-Ho Chan, <hoiho.chan@gmail.com>
+ * Copyright (C) 2013, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
 
 #ifdef USE_POLARSSL
 
+#if defined(USE_THREADS_POSIX)
+#  define POLARSSL_MUTEX_T       pthread_mutex_t
+#elif defined(USE_THREADS_WIN32)
+#  define POLARSSL_MUTEX_T       HANDLE
+#endif
+
+#if defined(USE_THREADS_POSIX) || defined(USE_THREADS_WIN32)
+
 int polarsslthreadlock_thread_setup(void);
 int polarsslthreadlock_thread_cleanup(void);
 int polarsslthreadlock_lock_function(int n);
 int polarsslthreadlock_unlock_function(int n);
 
+#else
+
+#define polarsslthreadlock_thread_setup() 1
+#define polarsslthreadlock_thread_cleanup() 1
+#define polarsslthreadlock_lock_function(x) 1
+#define polarsslthreadlock_unlock_function(x) 1
+
+#endif /* USE_THREADS_POSIX || USE_THREADS_WIN32 */
+
 #endif /* USE_POLARSSL */
-#endif /* HEADER_CURL_POLARSSLTHREADLOCK_H */
+
+#endif /* HEADER_CURL_POLARSSL_THREADLOCK_H */