Skip to content

Commit dc7e044

Browse files
Merge pull request #6881 from lealem47/mingw_pthreads
Fix for pthreads on MSYS2 & MINGW
2 parents 603b5bb + a810514 commit dc7e044

2 files changed

Lines changed: 9 additions & 6 deletions

File tree

wolfssl/wolfcrypt/types.h

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -761,8 +761,8 @@ typedef struct w64wrapper {
761761

762762
/* snprintf is used in asn.c for GetTimeString, PKCS7 test, and when
763763
debugging is turned on */
764+
#ifndef XSNPRINTF
764765
#ifndef USE_WINDOWS_API
765-
#ifndef XSNPRINTF
766766
#if defined(WOLFSSL_ESPIDF) && \
767767
(!defined(NO_ASN_TIME) && defined(HAVE_PKCS7))
768768
#include<stdarg.h>
@@ -798,7 +798,6 @@ typedef struct w64wrapper {
798798
#include <stdio.h>
799799
#define XSNPRINTF snprintf
800800
#endif
801-
#endif
802801
#else
803802
#if defined(_MSC_VER) || defined(__CYGWIN__) || defined(__MINGW32__)
804803
#if defined(_MSC_VER) && (_MSC_VER >= 1900)
@@ -834,6 +833,7 @@ typedef struct w64wrapper {
834833
#define XSNPRINTF snprintf
835834
#endif /* _MSC_VER */
836835
#endif /* USE_WINDOWS_API */
836+
#endif /* !XSNPRINTF */
837837

838838
#if defined(WOLFSSL_CERT_EXT) || defined(OPENSSL_EXTRA) || \
839839
defined(HAVE_ALPN) || defined(WOLFSSL_SNIFFER)
@@ -1377,8 +1377,7 @@ typedef struct w64wrapper {
13771377
typedef unsigned int THREAD_RETURN;
13781378
typedef size_t THREAD_TYPE;
13791379
#define WOLFSSL_THREAD
1380-
#elif (defined(_POSIX_THREADS) || defined(HAVE_PTHREAD)) && \
1381-
!defined(__MINGW32__)
1380+
#elif (defined(_POSIX_THREADS) || defined(HAVE_PTHREAD))
13821381
#ifndef __MACH__
13831382
#include <pthread.h>
13841383
typedef struct COND_TYPE {

wolfssl/wolfcrypt/wc_port.h

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,10 @@
6060

6161
/* THREADING/MUTEX SECTION */
6262
#ifdef USE_WINDOWS_API
63+
#if defined(__MINGW32__) && !defined(SINGLE_THREADED)
64+
#define WOLFSSL_PTHREADS
65+
#include <pthread.h>
66+
#endif
6367
#ifdef WOLFSSL_GAME_BUILD
6468
#include "system/xtl.h"
6569
#else
@@ -739,10 +743,10 @@ WOLFSSL_ABI WOLFSSL_API int wolfCrypt_Cleanup(void);
739743
#endif
740744

741745
#ifndef MAX_FILENAME_SZ
742-
#define MAX_FILENAME_SZ 256 /* max file name length */
746+
#define MAX_FILENAME_SZ (260 + 1) /* max file name length */
743747
#endif
744748
#ifndef MAX_PATH
745-
#define MAX_PATH 256
749+
#define MAX_PATH (260 + 1)
746750
#endif
747751

748752
WOLFSSL_LOCAL int wc_FileLoad(const char* fname, unsigned char** buf,

0 commit comments

Comments
 (0)