Just for clarification... this patch adds pkcs11 build option support to Python/Visual Studio build system and thus allows fixing this bug:
<https://community.openvpn.net/openvpn/ticket/145> > From: Samuli Seppänen <sam...@openvpn.net> > > Fixes https://community.openvpn.net/openvpn/ticket/145 > --- > win/config.h.in | 4 +++- > win/msvc.mak.in | 11 ++++++++--- > win/settings.in | 4 ++++ > 3 files changed, 15 insertions(+), 4 deletions(-) > > diff --git a/win/config.h.in b/win/config.h.in > index 82344a0..09263d3 100644 > --- a/win/config.h.in > +++ b/win/config.h.in > @@ -74,7 +74,9 @@ typedef unsigned long in_addr_t; > #endif > > /* Enable PKCS#11 support */ > -/* #define USE_PKCS11 1 */ > +#if @USE_PKCS11@ != 0 > +#define USE_PKCS11 1 > +#endif > > /* Enable HTTP proxy support */ > #if @ENABLE_HTTP_PROXY@ != 0 > diff --git a/win/msvc.mak.in b/win/msvc.mak.in > index ac17ae9..7979b5e 100644 > --- a/win/msvc.mak.in > +++ b/win/msvc.mak.in > @@ -14,14 +14,19 @@ > OPENSSL = @OPENSSL_DIR@ > OPENSSL_DYNAMIC = libeay32.lib ssleay32.lib > > +PKCS11_HELPER = @PKCS11_HELPER_DIR@ > +!ifdef INCLUDE_PKCS11 > +PKCS11_HELPER_DYNAMIC = pkcs11-helper.lib > +!endif > + > LZO = @LZO_DIR@ > LZO_DYNAMIC = lzo2.lib > > -INCLUDE_DIRS = -I$(OPENSSL)/include -I$(LZO)/include > +INCLUDE_DIRS = -I$(OPENSSL)/include -I$(LZO)/include > -I$(PKCS11_HELPER)/include > > -LIBS = $(OPENSSL_DYNAMIC) $(LZO_DYNAMIC) ws2_32.lib crypt32.lib iphlpapi.lib > winmm.lib user32.lib gdi32.lib advapi32.lib wininet.lib > +LIBS = $(OPENSSL_DYNAMIC) $(PKCS11_HELPER_DYNAMIC) $(LZO_DYNAMIC) ws2_32.lib > crypt32.lib iphlpapi.lib winmm.lib user32.lib gdi32.lib advapi32.lib > wininet.lib > > -LIB_DIRS = -LIBPATH:$(OPENSSL)\lib -LIBPATH:$(LZO)\lib > +LIB_DIRS = -LIBPATH:$(OPENSSL)\lib -LIBPATH:$(PKCS11_HELPER)\lib > -LIBPATH:$(LZO)\lib > > EXE = openvpn.exe > > diff --git a/win/settings.in b/win/settings.in > index 10c7926..a197fb8 100644 > --- a/win/settings.in > +++ b/win/settings.in > @@ -33,6 +33,10 @@ > !define OPENVPN_GUI_DIR "../openvpn-gui" > !define OPENVPN_GUI "openvpn-gui-1.0.3.exe" > > +# Uncomment to use the PKCS#11 helper library > +!define USE_PKCS11 0 > +;!define INCLUDE_PKCS11 > + > # Prebuilt libraries. DMALLOC is optional. > !define OPENSSL_DIR "../openssl" > !define LZO_DIR "../lzo"