diff --git a/.github/workflows/make-test-swtpm.yml b/.github/workflows/make-test-swtpm.yml index eb1148be..b44d72cc 100644 --- a/.github/workflows/make-test-swtpm.yml +++ b/.github/workflows/make-test-swtpm.yml @@ -54,6 +54,8 @@ jobs: WOLFSSL_PATH=./wolfssl ./examples/run_examples.sh - name: make install run: sudo make install + - name: make dist + run: make dist # build and test CSharp wrapper - name: Install mono diff --git a/.github/workflows/win-test.yml b/.github/workflows/win-test.yml new file mode 100644 index 00000000..5b48dcb1 --- /dev/null +++ b/.github/workflows/win-test.yml @@ -0,0 +1,61 @@ +name: Windows Build Test + +on: + push: + branches: [ 'master', 'main', 'release/**' ] + pull_request: + branches: [ '*' ] + +jobs: + build: + + runs-on: windows-latest + + # This should be a safe limit for the tests to run. + timeout-minutes: 6 + + env: + # Path to the solution file relative to the root of the project. + SOLUTION_FILE_PATH: wolftpm\IDE\VisualStudio\wolftpm.sln + + # Configuration type to build. + # You can convert this to a build matrix if you need coverage of multiple configuration types. + # https://docs.github.com/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix + BUILD_CONFIGURATION: Debug + BUILD_PLATFORM: x64 + + steps: + - name: Pull wolfTPM + uses: actions/checkout@master + with: + repository: wolfssl/wolftpm + path: wolftpm + + - name: Pull wolfssl + uses: actions/checkout@master + with: + repository: wolfssl/wolfssl + path: wolfssl + - name: Create FIPS stub files (autogen) + working-directory: wolfssl + run: | + echo $null >> wolfcrypt\src\fips.c + echo $null >> wolfcrypt\src\fips_test.c + echo $null >> wolfcrypt\src\wolfcrypt_first.c + echo $null >> wolfcrypt\src\wolfcrypt_last.c + + - name: Add MSBuild to PATH + uses: microsoft/setup-msbuild@v1 + + - name: Build + working-directory: ${{env.GITHUB_WORKSPACE}} + # Add additional options to the MSBuild command line here (like platform or verbosity level). + # See https://docs.microsoft.com/visualstudio/msbuild/msbuild-command-line-reference + run: msbuild /m /p:PlatformToolset=v142 /p:Platform=${{env.BUILD_PLATFORM}} /p:Configuration=${{env.BUILD_CONFIGURATION}} ${{env.SOLUTION_FILE_PATH}} + + # The GitHub CI runners do not have a TPM. + # Failure 0x8028400f: unknown error number + # TBS_E_TPM_NOT_FOUND (0x8028400F) A compatible Trusted Platform Module (TPM) Security Device cannot be found on this computer. + #- name: Run Wrap Test + # working-directory: ${{env.GITHUB_WORKSPACE}} + # run: wolftpm\IDE\VisualStudio\Debug\x64\wrap_test.exe diff --git a/.gitignore b/.gitignore index 1206f4d0..b8b7b2a8 100644 --- a/.gitignore +++ b/.gitignore @@ -121,3 +121,9 @@ docs/html # Wrapper wrapper/CSharp/obj wrapper/CSharp/bin + +# Visual Studio +IDE/VisualStudio/Debug +IDE/VisualStudio/DLL Debug +IDE/VisualStudio/DLL Release +IDE/VisualStudio/Release diff --git a/CMakeLists.txt b/CMakeLists.txt index fdc39267..7a9bb724 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -95,7 +95,7 @@ endif("${WOLFTPM_INTERFACE}" STREQUAL "auto") if(WIN32) target_compile_definitions(wolftpm PRIVATE - "_WINDLL" + "WOLFTPM_DLL" ) endif(WIN32) diff --git a/IDE/STM32CUBE/include.am b/IDE/STM32CUBE/include.am index 03e5abac..585dc1a0 100644 --- a/IDE/STM32CUBE/include.am +++ b/IDE/STM32CUBE/include.am @@ -2,7 +2,7 @@ # included from Top Level Makefile.am # All paths should be given relative to the root -EXTRA_DIST+= ide/STM32CUBE/wolftpm_test.c -EXTRA_DIST+= ide/STM32CUBE/wolftpm_test.h -EXTRA_DIST+= ide/STM32CUBE/README.md -EXTRA_DIST+= ide/STM32CUBE/default_conf.ftl +EXTRA_DIST+= IDE/STM32CUBE/wolftpm_test.c +EXTRA_DIST+= IDE/STM32CUBE/wolftpm_test.h +EXTRA_DIST+= IDE/STM32CUBE/README.md +EXTRA_DIST+= IDE/STM32CUBE/default_conf.ftl diff --git a/IDE/VisualStudio/README.md b/IDE/VisualStudio/README.md new file mode 100644 index 00000000..38429f02 --- /dev/null +++ b/IDE/VisualStudio/README.md @@ -0,0 +1,7 @@ +# Visual Studio Solution for wolfTPM + +This includes projects for building wolfssl, wolftpm and some examples. The solution and project are based on older VS 2015, but can be retargeted / updated to newer when opened. + +All build settings are contained in IDE/VisualStudio/user_settings.h. This module supports using the FIPS ready bundle from the website. Just enable the `#if 0` FIPS section in user_settings.h. See wolfssl/IDE/WIN10/README.txt for details on setting the FIPS integrity check in fips_test.c at run-time. + +These projects assume `wolftpm` and `wolfssl` directories reside next to each other. diff --git a/IDE/VisualStudio/include.am b/IDE/VisualStudio/include.am new file mode 100644 index 00000000..074517ae --- /dev/null +++ b/IDE/VisualStudio/include.am @@ -0,0 +1,12 @@ +# vim:ft=automake +# included from Top Level Makefile.am +# All paths should be given relative to the root + +EXTRA_DIST+= IDE/VisualStudio/README.md +EXTRA_DIST+= IDE/VisualStudio/wolftpm.sln +EXTRA_DIST+= IDE/VisualStudio/wolftpm.vcxproj +EXTRA_DIST+= IDE/VisualStudio/wolfssl.vcxproj +EXTRA_DIST+= IDE/VisualStudio/wolfcrypt_test.vcxproj +EXTRA_DIST+= IDE/VisualStudio/tls_server.vcxproj +EXTRA_DIST+= IDE/VisualStudio/wrap_test.vcxproj +EXTRA_DIST+= IDE/VisualStudio/user_settings.h diff --git a/IDE/VisualStudio/tls_server.vcxproj b/IDE/VisualStudio/tls_server.vcxproj new file mode 100644 index 00000000..46efff77 --- /dev/null +++ b/IDE/VisualStudio/tls_server.vcxproj @@ -0,0 +1,306 @@ + + + + + Debug + Win32 + + + DLL Debug + Win32 + + + DLL Debug + x64 + + + DLL Release + Win32 + + + DLL Release + x64 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + Win32Proj + {e7403474-f122-4aec-92e3-b41f4008f0fa} + tlsserver + + + + Application + true + v110 + Unicode + + + Application + true + v110 + Unicode + + + Application + false + v110 + true + Unicode + + + Application + false + v110 + true + Unicode + + + Application + true + v110 + Unicode + + + Application + true + v110 + Unicode + + + Application + false + v110 + true + Unicode + + + Application + false + v110 + true + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(SolutionDir)$(Configuration)\$(Platform)\ + $(Configuration)\$(Platform)\$(ProjectName)_obj\ + + + false + + + false + + + false + + + false + + + false + + + false + + + false + + + false + + + + Level3 + true + WIN32;_DEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + true + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + + + Console + true + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;tbs.lib;wolftpm.lib;wolfssl.lib;%(AdditionalDependencies) + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + Level3 + true + WIN32;_DEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + true + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + + + Console + true + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;tbs.lib;wolftpm.lib;wolfssl.lib;%(AdditionalDependencies) + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + Level3 + true + true + true + WIN32;NDEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + true + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + + + Console + true + true + true + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;tbs.lib;wolftpm.lib;wolfssl.lib;%(AdditionalDependencies) + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + Level3 + true + true + true + WIN32;NDEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + true + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + + + Console + true + true + true + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;tbs.lib;wolftpm.lib;wolfssl.lib;%(AdditionalDependencies) + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + Level3 + true + _DEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + true + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + + + Console + true + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;tbs.lib;wolftpm.lib;wolfssl.lib;%(AdditionalDependencies) + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + Level3 + true + _DEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + true + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + + + Console + true + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;tbs.lib;wolftpm.lib;wolfssl.lib;%(AdditionalDependencies) + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + Level3 + true + true + true + NDEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + true + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + + + Console + true + true + true + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;tbs.lib;wolftpm.lib;wolfssl.lib;%(AdditionalDependencies) + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + Level3 + true + true + true + NDEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + true + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + + + Console + true + true + true + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;tbs.lib;wolftpm.lib;wolfssl.lib;%(AdditionalDependencies) + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + + + + + {73973223-5ee8-41ca-8e88-1d60e89a237b} + false + + + {2ba1f3ea-4146-4df5-af12-0bd33e0dd74b} + false + + + + + + \ No newline at end of file diff --git a/IDE/VisualStudio/user_settings.h b/IDE/VisualStudio/user_settings.h new file mode 100644 index 00000000..7b8379c3 --- /dev/null +++ b/IDE/VisualStudio/user_settings.h @@ -0,0 +1,172 @@ +/* user_settings.h + * + * Copyright (C) 2006-2023 wolfSSL Inc. + * + * This file is part of wolfTPM. + * + * wolfTPM is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * wolfTPM is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA + */ + +/* Template for wolfTPM and wolfCrypt (FIPS optional) with TLS v1.2 and v1.3 */ + +#ifndef _USER_SETTINGS_H_ +#define _USER_SETTINGS_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#if 0 /* enable for FIPS ready */ + /* FIPS v5-ready 140-3 */ + #define HAVE_FIPS + #define HAVE_FIPS_VERSION 5 + #define HAVE_FIPS_VERSION_MINOR 3 +#endif + +/* Platform */ +#define HAVE_THREAD_LS /* thread local storage */ +#ifdef _WIN32 + #define WOLFTPM_WINAPI + #define _WINSOCK_DEPRECATED_NO_WARNINGS + #define _CRT_SECURE_NO_WARNINGS +#endif + +/* TPM */ +#define WOLFSSL_AES_CFB /* required for parameter encryption */ +#define WOLFSSL_PUBLIC_MP /* expose mp_ math functions - required for tpm ECC secret encrypt */ + +/* Callbacks */ +#define WOLF_CRYPTO_CB +#define HAVE_PK_CALLBACKS + +/* TLS Versions v1.2 and v1.3 */ +#define WOLFSSL_TLS13 +#define NO_OLD_TLS + +/* TLS Extensions */ +#define HAVE_TLS_EXTENSIONS +#define HAVE_SUPPORTED_CURVES +#define HAVE_EXTENDED_MASTER +#define HAVE_SERVER_RENEGOTIATION_INFO +#define HAVE_ENCRYPT_THEN_MAC +#define HAVE_SNI + +/* Math Option */ +#ifdef HAVE_FIPS + #define USE_FAST_MATH /* tfm.c */ + #define FP_MAX_BITS 16384 +#else + #define WOLFSSL_SP_MATH_ALL /* sp_int.c */ + #define SP_INT_BITS 8192 +#endif +#define WOLFSSL_USE_ALIGN +#define TFM_TIMING_RESISTANT +#define ECC_TIMING_RESISTANT +#define WC_RSA_BLINDING + +/* No ASM (optional) */ +#if 0 + #define TFM_NO_ASM + #define WOLFSSL_NO_ASM + #define NO_CHACHA_ASM +#endif + +/* Debugging */ +#if 1 + #define DEBUG_WOLFSSL + #define ERROR_QUEUE_PER_THREAD +#else + //#define NO_ERROR_STRINGS +#endif + +/* Certificate */ +#define WOLFSSL_ASN_TEMPLATE +#define WOLFSSL_BASE64_ENCODE +#define WOLFSSL_CERT_GEN +#define WOLFSSL_CERT_REQ +#define WOLFSSL_CERT_EXT + +/* RNG */ +#define HAVE_HASHDRBG +#define WC_RNG_SEED_CB + +/* Asymmetric */ +#define HAVE_ECC +#define ECC_SHAMIR +#define ECC_USER_CURVES +#define HAVE_ECC192 +#define HAVE_ECC224 +#define HAVE_ECC256 +#define HAVE_ECC384 +#define HAVE_ECC521 +#define WOLFSSL_ECDSA_SET_K +#define HAVE_ECC_CDH +#define WOLFSSL_VALIDATE_ECC_IMPORT +#define WOLFSSL_VALIDATE_ECC_KEYGEN + +#define WC_RSA_PSS +#define WOLFSSL_PSS_LONG_SALT +#define WC_RSA_NO_PADDING +#define WOLFSSL_KEY_GEN + +#define HAVE_DH_DEFAULT_PARAMS +#define HAVE_FFDHE_Q +#define HAVE_FFDHE_2048 +#define HAVE_FFDHE_3072 +#define HAVE_FFDHE_4096 +#define HAVE_FFDHE_6144 +#define HAVE_FFDHE_8192 +#define WOLFSSL_VALIDATE_FFC_IMPORT + +#define WOLFSSL_SHA224 +#define WOLFSSL_SHA384 +#define WOLFSSL_SHA512 +#define WOLFSSL_NOSHA512_224 +#define WOLFSSL_NOSHA512_256 + +#define WOLFSSL_SHA3 +#define WOLFSSL_NO_SHAKE128 +#define WOLFSSL_NO_SHAKE256 + +#define HAVE_HKDF + +#define WOLFSSL_AES_DIRECT +#define HAVE_AES_ECB +#define WOLFSSL_AES_COUNTER +#define WOLFSSL_AES_OFB +#define HAVE_AESCCM +#define HAVE_AESGCM +#define GCM_TABLE_4BIT +#define HAVE_AES_KEYWRAP +#define WOLFSSL_AES_DIRECT +#define HAVE_PKCS7 +#define WOLFSSL_CMAC + +#define HAVE_X963_KDF + +/* Disabled features */ +#undef NO_RC4 +#define NO_RC4 +#define NO_PSK +#define NO_MD4 +#define NO_DES3 +#define NO_DSA + + +#ifdef __cplusplus +} +#endif + +#endif /* _USER_SETTINGS_H_ */ diff --git a/IDE/VisualStudio/wolfcrypt_test.vcxproj b/IDE/VisualStudio/wolfcrypt_test.vcxproj new file mode 100644 index 00000000..7889b77b --- /dev/null +++ b/IDE/VisualStudio/wolfcrypt_test.vcxproj @@ -0,0 +1,284 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + DLL Debug + Win32 + + + DLL Debug + x64 + + + DLL Release + Win32 + + + DLL Release + x64 + + + Release + Win32 + + + Release + x64 + + + + {D04BDF66-664A-4D59-BEAC-8AB2D5809C21} + Win32Proj + + + + Application + v110 + + + Application + v110 + + + Application + v110 + + + Application + v110 + + + Application + v110 + + + Application + v110 + + + Application + v110 + + + Application + v110 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)$(Configuration)\$(Platform)\ + $(Configuration)\$(Platform)\$(ProjectName)_obj\ + false + + + + Disabled + .\;..\..\;..\..\..\wolfssl;%(AdditionalIncludeDirectories) + WIN32;_DEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDebugDLL + + Level3 + ProgramDatabase + + + true + Console + MachineX86 + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + false + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + Disabled + .\;..\..\;..\..\..\wolfssl;%(AdditionalIncludeDirectories) + WIN32;_DEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDebugDLL + + Level3 + ProgramDatabase + + + true + Console + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + true + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + .\;..\..\;..\..\..\wolfssl;%(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions) + MultiThreadedDLL + + Level3 + ProgramDatabase + true + + + true + Console + MachineX86 + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + true + true + UseLinkTimeCodeGeneration + false + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + .\;..\..\;..\..\..\wolfssl;%(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions) + MultiThreadedDLL + + Level3 + ProgramDatabase + true + + + true + Console + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + true + true + UseLinkTimeCodeGeneration + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + Disabled + .\;..\..\;..\..\..\wolfssl;%(AdditionalIncludeDirectories) + WIN32;_DEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFSSL_DLL;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDebugDLL + + Level3 + ProgramDatabase + false + + + true + Console + MachineX86 + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + true + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + Disabled + .\;..\..\;..\..\..\wolfssl;%(AdditionalIncludeDirectories) + WIN32;_DEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;CYASSL_DLL;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDebugDLL + + Level3 + ProgramDatabase + false + + + true + Console + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + false + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + .\;..\..\;..\..\..\wolfssl;%(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFSSL_DLL;%(PreprocessorDefinitions) + MultiThreadedDLL + + Level3 + ProgramDatabase + + + true + Console + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + true + true + MachineX86 + UseLinkTimeCodeGeneration + true + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + .\;..\..\;..\..\..\wolfssl;%(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFSSL_DLL;%(PreprocessorDefinitions) + MultiThreadedDLL + + Level3 + ProgramDatabase + + + true + Console + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + true + true + UseLinkTimeCodeGeneration + true + + + + + + + + {73973223-5ee8-41ca-8e88-1d60e89a237b} + false + + + + + + \ No newline at end of file diff --git a/IDE/VisualStudio/wolfssl.vcxproj b/IDE/VisualStudio/wolfssl.vcxproj new file mode 100644 index 00000000..7b61d010 --- /dev/null +++ b/IDE/VisualStudio/wolfssl.vcxproj @@ -0,0 +1,368 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + DLL Debug + Win32 + + + DLL Debug + x64 + + + DLL Release + Win32 + + + DLL Release + x64 + + + Release + Win32 + + + Release + x64 + + + + {73973223-5EE8-41CA-8E88-1D60E89A237B} + wolfssl + Win32Proj + + + + StaticLibrary + v110 + Unicode + true + + + DynamicLibrary + v110 + Unicode + true + + + StaticLibrary + v110 + Unicode + true + + + DynamicLibrary + v110 + Unicode + true + + + StaticLibrary + v110 + Unicode + + + DynamicLibrary + v110 + Unicode + + + StaticLibrary + v110 + Unicode + + + DynamicLibrary + v110 + Unicode + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(SolutionDir)$(Configuration)\$(Platform)\ + $(Configuration)\$(Platform)\$(ProjectName)_obj\ + + + false + + + false + + + false + + + false + + + + Disabled + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDebugDLL + Level4 + ProgramDatabase + 4206;4214;4706;%(DisableSpecificWarnings) + + + + + Disabled + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + BUILDING_WOLFSSL;WOLFSSL_DLL;WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions) + true + EnableFastChecks + MultiThreadedDebugDLL + Level4 + ProgramDatabase + 4206;4214;4706;%(DisableSpecificWarnings) + + + ws2_32.lib;%(AdditionalDependencies) + 0x5A000000 + false + false + true + + + + + Disabled + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDebugDLL + Level4 + ProgramDatabase + 4206;4214;4706;%(DisableSpecificWarnings) + + + + + Disabled + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + BUILDING_WOLFSSL;WOLFSSL_DLL;WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions) + true + EnableFastChecks + MultiThreadedDebugDLL + Level4 + ProgramDatabase + 4206;4214;4706;%(DisableSpecificWarnings) + + + ws2_32.lib;%(AdditionalDependencies) + false + false + + + + + MaxSpeed + true + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions) + MultiThreadedDLL + true + Level3 + ProgramDatabase + false + + + + + MaxSpeed + true + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + BUILDING_WOLFSSL;WOLFSSL_DLL;WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions) + MultiThreadedDLL + true + Level3 + ProgramDatabase + + + ws2_32.lib;%(AdditionalDependencies) + false + 0x5A000000 + true + + + + + MaxSpeed + true + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions) + MultiThreadedDLL + true + Level3 + ProgramDatabase + false + + + + + MaxSpeed + true + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + BUILDING_WOLFSSL;WOLFSSL_DLL;WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions) + MultiThreadedDLL + true + Level3 + ProgramDatabase + + + ws2_32.lib;%(AdditionalDependencies) + false + + + + + + + + + + + + + + + + false + false + false + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + false + ml64.exe /DWOLFSSL_USER_SETTINGS /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity) + ml64.exe /DWOLFSSL_USER_SETTINGS /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity) + $(IntDir)%(Filename).obj + $(IntDir)%(Filename).obj + false + false + ml64.exe /DWOLFSSL_USER_SETTINGS /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity) + ml64.exe /DWOLFSSL_USER_SETTINGS /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity) + $(IntDir)%(Filename).obj + $(IntDir)%(Filename).obj + + + + + false + false + ml64.exe /DWOLFSSL_USER_SETTINGS /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity) + ml64.exe /DWOLFSSL_USER_SETTINGS /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity) + $(IntDir)%(Filename).obj + $(IntDir)%(Filename).obj + false + false + ml64.exe /DWOLFSSL_USER_SETTINGS /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity) + ml64.exe /DWOLFSSL_USER_SETTINGS /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity) + $(IntDir)%(Filename).obj + $(IntDir)%(Filename).obj + + + + + + + + + + + + false + false + false + false + ml64.exe /DWOLFSSL_USER_SETTINGS /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity) + ml64.exe /DWOLFSSL_USER_SETTINGS /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity) + ml64.exe /DWOLFSSL_USER_SETTINGS /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity) + ml64.exe /DWOLFSSL_USER_SETTINGS /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity) + $(IntDir)%(Filename).obj + $(IntDir)%(Filename).obj + $(IntDir)%(Filename).obj + $(IntDir)%(Filename).obj + + + + + + \ No newline at end of file diff --git a/IDE/VisualStudio/wolftpm.sln b/IDE/VisualStudio/wolftpm.sln new file mode 100644 index 00000000..483e51b2 --- /dev/null +++ b/IDE/VisualStudio/wolftpm.sln @@ -0,0 +1,115 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.1.32228.430 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wolfssl", "wolfssl.vcxproj", "{73973223-5EE8-41CA-8E88-1D60E89A237B}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wolfcrypt_test", "wolfcrypt_test.vcxproj", "{D04BDF66-664A-4D59-BEAC-8AB2D5809C21}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wolftpm", "wolftpm.vcxproj", "{2BA1F3EA-4146-4DF5-AF12-0BD33E0DD74B}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tls_server", "tls_server.vcxproj", "{E7403474-F122-4AEC-92E3-B41F4008F0FA}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wrap_test", "wrap_test.vcxproj", "{A495B4A4-D47F-4141-AC59-331743CD953A}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Debug|x64 = Debug|x64 + DLL Debug|Win32 = DLL Debug|Win32 + DLL Debug|x64 = DLL Debug|x64 + DLL Release|Win32 = DLL Release|Win32 + DLL Release|x64 = DLL Release|x64 + Release|Win32 = Release|Win32 + Release|x64 = Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {73973223-5EE8-41CA-8E88-1D60E89A237B}.Debug|Win32.ActiveCfg = Debug|Win32 + {73973223-5EE8-41CA-8E88-1D60E89A237B}.Debug|Win32.Build.0 = Debug|Win32 + {73973223-5EE8-41CA-8E88-1D60E89A237B}.Debug|x64.ActiveCfg = Debug|x64 + {73973223-5EE8-41CA-8E88-1D60E89A237B}.Debug|x64.Build.0 = Debug|x64 + {73973223-5EE8-41CA-8E88-1D60E89A237B}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32 + {73973223-5EE8-41CA-8E88-1D60E89A237B}.DLL Debug|Win32.Build.0 = DLL Debug|Win32 + {73973223-5EE8-41CA-8E88-1D60E89A237B}.DLL Debug|x64.ActiveCfg = DLL Debug|x64 + {73973223-5EE8-41CA-8E88-1D60E89A237B}.DLL Debug|x64.Build.0 = DLL Debug|x64 + {73973223-5EE8-41CA-8E88-1D60E89A237B}.DLL Release|Win32.ActiveCfg = DLL Release|Win32 + {73973223-5EE8-41CA-8E88-1D60E89A237B}.DLL Release|Win32.Build.0 = DLL Release|Win32 + {73973223-5EE8-41CA-8E88-1D60E89A237B}.DLL Release|x64.ActiveCfg = DLL Release|x64 + {73973223-5EE8-41CA-8E88-1D60E89A237B}.DLL Release|x64.Build.0 = DLL Release|x64 + {73973223-5EE8-41CA-8E88-1D60E89A237B}.Release|Win32.ActiveCfg = Release|Win32 + {73973223-5EE8-41CA-8E88-1D60E89A237B}.Release|Win32.Build.0 = Release|Win32 + {73973223-5EE8-41CA-8E88-1D60E89A237B}.Release|x64.ActiveCfg = Release|x64 + {73973223-5EE8-41CA-8E88-1D60E89A237B}.Release|x64.Build.0 = Release|x64 + {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.Debug|Win32.ActiveCfg = Debug|Win32 + {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.Debug|Win32.Build.0 = Debug|Win32 + {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.Debug|x64.ActiveCfg = Debug|x64 + {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.Debug|x64.Build.0 = Debug|x64 + {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32 + {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.DLL Debug|Win32.Build.0 = DLL Debug|Win32 + {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.DLL Debug|x64.ActiveCfg = DLL Debug|x64 + {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.DLL Debug|x64.Build.0 = DLL Debug|x64 + {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.DLL Release|Win32.ActiveCfg = DLL Release|Win32 + {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.DLL Release|Win32.Build.0 = DLL Release|Win32 + {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.DLL Release|x64.ActiveCfg = DLL Release|x64 + {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.DLL Release|x64.Build.0 = DLL Release|x64 + {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.Release|Win32.ActiveCfg = Release|Win32 + {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.Release|Win32.Build.0 = Release|Win32 + {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.Release|x64.ActiveCfg = Release|x64 + {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.Release|x64.Build.0 = Release|x64 + {2BA1F3EA-4146-4DF5-AF12-0BD33E0DD74B}.Debug|Win32.ActiveCfg = Debug|Win32 + {2BA1F3EA-4146-4DF5-AF12-0BD33E0DD74B}.Debug|Win32.Build.0 = Debug|Win32 + {2BA1F3EA-4146-4DF5-AF12-0BD33E0DD74B}.Debug|x64.ActiveCfg = Debug|x64 + {2BA1F3EA-4146-4DF5-AF12-0BD33E0DD74B}.Debug|x64.Build.0 = Debug|x64 + {2BA1F3EA-4146-4DF5-AF12-0BD33E0DD74B}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32 + {2BA1F3EA-4146-4DF5-AF12-0BD33E0DD74B}.DLL Debug|Win32.Build.0 = DLL Debug|Win32 + {2BA1F3EA-4146-4DF5-AF12-0BD33E0DD74B}.DLL Debug|x64.ActiveCfg = DLL Debug|x64 + {2BA1F3EA-4146-4DF5-AF12-0BD33E0DD74B}.DLL Debug|x64.Build.0 = DLL Debug|x64 + {2BA1F3EA-4146-4DF5-AF12-0BD33E0DD74B}.DLL Release|Win32.ActiveCfg = DLL Release|Win32 + {2BA1F3EA-4146-4DF5-AF12-0BD33E0DD74B}.DLL Release|Win32.Build.0 = DLL Release|Win32 + {2BA1F3EA-4146-4DF5-AF12-0BD33E0DD74B}.DLL Release|x64.ActiveCfg = DLL Release|x64 + {2BA1F3EA-4146-4DF5-AF12-0BD33E0DD74B}.DLL Release|x64.Build.0 = DLL Release|x64 + {2BA1F3EA-4146-4DF5-AF12-0BD33E0DD74B}.Release|Win32.ActiveCfg = Release|Win32 + {2BA1F3EA-4146-4DF5-AF12-0BD33E0DD74B}.Release|Win32.Build.0 = Release|Win32 + {2BA1F3EA-4146-4DF5-AF12-0BD33E0DD74B}.Release|x64.ActiveCfg = Release|x64 + {2BA1F3EA-4146-4DF5-AF12-0BD33E0DD74B}.Release|x64.Build.0 = Release|x64 + {E7403474-F122-4AEC-92E3-B41F4008F0FA}.Debug|Win32.ActiveCfg = Debug|Win32 + {E7403474-F122-4AEC-92E3-B41F4008F0FA}.Debug|Win32.Build.0 = Debug|Win32 + {E7403474-F122-4AEC-92E3-B41F4008F0FA}.Debug|x64.ActiveCfg = Debug|x64 + {E7403474-F122-4AEC-92E3-B41F4008F0FA}.Debug|x64.Build.0 = Debug|x64 + {E7403474-F122-4AEC-92E3-B41F4008F0FA}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32 + {E7403474-F122-4AEC-92E3-B41F4008F0FA}.DLL Debug|Win32.Build.0 = DLL Debug|Win32 + {E7403474-F122-4AEC-92E3-B41F4008F0FA}.DLL Debug|x64.ActiveCfg = DLL Debug|x64 + {E7403474-F122-4AEC-92E3-B41F4008F0FA}.DLL Debug|x64.Build.0 = DLL Debug|x64 + {E7403474-F122-4AEC-92E3-B41F4008F0FA}.DLL Release|Win32.ActiveCfg = DLL Release|Win32 + {E7403474-F122-4AEC-92E3-B41F4008F0FA}.DLL Release|Win32.Build.0 = DLL Release|Win32 + {E7403474-F122-4AEC-92E3-B41F4008F0FA}.DLL Release|x64.ActiveCfg = DLL Release|x64 + {E7403474-F122-4AEC-92E3-B41F4008F0FA}.DLL Release|x64.Build.0 = DLL Release|x64 + {E7403474-F122-4AEC-92E3-B41F4008F0FA}.Release|Win32.ActiveCfg = Release|Win32 + {E7403474-F122-4AEC-92E3-B41F4008F0FA}.Release|Win32.Build.0 = Release|Win32 + {E7403474-F122-4AEC-92E3-B41F4008F0FA}.Release|x64.ActiveCfg = Release|x64 + {E7403474-F122-4AEC-92E3-B41F4008F0FA}.Release|x64.Build.0 = Release|x64 + {A495B4A4-D47F-4141-AC59-331743CD953A}.Debug|Win32.ActiveCfg = Debug|Win32 + {A495B4A4-D47F-4141-AC59-331743CD953A}.Debug|Win32.Build.0 = Debug|Win32 + {A495B4A4-D47F-4141-AC59-331743CD953A}.Debug|x64.ActiveCfg = Debug|x64 + {A495B4A4-D47F-4141-AC59-331743CD953A}.Debug|x64.Build.0 = Debug|x64 + {A495B4A4-D47F-4141-AC59-331743CD953A}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32 + {A495B4A4-D47F-4141-AC59-331743CD953A}.DLL Debug|Win32.Build.0 = DLL Debug|Win32 + {A495B4A4-D47F-4141-AC59-331743CD953A}.DLL Debug|x64.ActiveCfg = DLL Debug|x64 + {A495B4A4-D47F-4141-AC59-331743CD953A}.DLL Debug|x64.Build.0 = DLL Debug|x64 + {A495B4A4-D47F-4141-AC59-331743CD953A}.DLL Release|Win32.ActiveCfg = DLL Release|Win32 + {A495B4A4-D47F-4141-AC59-331743CD953A}.DLL Release|Win32.Build.0 = DLL Release|Win32 + {A495B4A4-D47F-4141-AC59-331743CD953A}.DLL Release|x64.ActiveCfg = DLL Release|x64 + {A495B4A4-D47F-4141-AC59-331743CD953A}.DLL Release|x64.Build.0 = DLL Release|x64 + {A495B4A4-D47F-4141-AC59-331743CD953A}.Release|Win32.ActiveCfg = Release|Win32 + {A495B4A4-D47F-4141-AC59-331743CD953A}.Release|Win32.Build.0 = Release|Win32 + {A495B4A4-D47F-4141-AC59-331743CD953A}.Release|x64.ActiveCfg = Release|x64 + {A495B4A4-D47F-4141-AC59-331743CD953A}.Release|x64.Build.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {435A5854-CB2B-45BE-B11A-A6508AE2781E} + EndGlobalSection +EndGlobal diff --git a/IDE/VisualStudio/wolftpm.vcxproj b/IDE/VisualStudio/wolftpm.vcxproj new file mode 100644 index 00000000..4fae99a4 --- /dev/null +++ b/IDE/VisualStudio/wolftpm.vcxproj @@ -0,0 +1,337 @@ + + + + + Debug + Win32 + + + DLL Debug + Win32 + + + DLL Debug + x64 + + + DLL Release + Win32 + + + DLL Release + x64 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {73973223-5ee8-41ca-8e88-1d60e89a237b} + + + + Win32Proj + {2ba1f3ea-4146-4df5-af12-0bd33e0dd74b} + wolftpm + + + + StaticLibrary + true + v110 + Unicode + + + DynamicLibrary + true + v110 + Unicode + + + StaticLibrary + false + v110 + true + Unicode + + + DynamicLibrary + false + v110 + true + Unicode + + + StaticLibrary + false + v110 + Unicode + + + DynamicLibrary + true + v110 + Unicode + + + StaticLibrary + false + v110 + true + Unicode + + + DynamicLibrary + false + v110 + true + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(SolutionDir)$(Configuration)\$(Platform)\ + $(Configuration)\$(Platform)\$(ProjectName)_obj\ + + + true + + + true + + + false + + + false + + + true + + + true + + + false + + + false + + + + Level3 + true + WIN32;_DEBUG;_LIB;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + true + NotUsing + + + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + + + + + true + + + + + Level3 + true + WIN32;_DEBUG;_LIB;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;BUILDING_WOLFTPM;WOLFTPM_DLL;%(PreprocessorDefinitions) + true + NotUsing + + + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + + + + + true + + + + + Level3 + true + true + true + WIN32;NDEBUG;_LIB;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + true + NotUsing + + + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + + + + + true + true + true + + + + + Level3 + true + true + true + WIN32;NDEBUG;_LIB;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;BUILDING_WOLFTPM;WOLFTPM_DLL;%(PreprocessorDefinitions) + true + NotUsing + + + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + + + + + true + true + true + + + + + Level3 + true + _DEBUG;_LIB;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + true + NotUsing + + + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + MultiThreadedDebugDLL + + + + + true + + + + + Level3 + true + _DEBUG;_LIB;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;BUILDING_WOLFTPM;WOLFTPM_DLL;%(PreprocessorDefinitions) + true + NotUsing + + + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + + + + + true + + + + + Level3 + true + true + true + NDEBUG;_LIB;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + NotUsing + + + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + + + + + true + true + true + + + + + Level3 + true + true + true + NDEBUG;_LIB;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;BUILDING_WOLFTPM;WOLFTPM_DLL;%(PreprocessorDefinitions) + NotUsing + + + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + + + + + true + true + DebugFull + + + + + + \ No newline at end of file diff --git a/IDE/VisualStudio/wrap_test.vcxproj b/IDE/VisualStudio/wrap_test.vcxproj new file mode 100644 index 00000000..e9f72c67 --- /dev/null +++ b/IDE/VisualStudio/wrap_test.vcxproj @@ -0,0 +1,306 @@ + + + + + Debug + Win32 + + + DLL Debug + Win32 + + + DLL Debug + x64 + + + DLL Release + Win32 + + + DLL Release + x64 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + Win32Proj + {a495b4a4-d47f-4141-ac59-331743cd953a} + wraptest + + + + Application + true + v110 + Unicode + + + Application + true + v110 + Unicode + + + Application + false + v110 + true + Unicode + + + Application + false + v110 + true + Unicode + + + Application + false + v110 + Unicode + + + Application + true + v110 + Unicode + + + Application + false + v110 + true + Unicode + + + Application + false + v110 + true + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(SolutionDir)$(Configuration)\$(Platform)\ + $(Configuration)\$(Platform)\$(ProjectName)_obj\ + + + false + + + false + + + false + + + false + + + false + + + false + + + false + + + false + + + + Level3 + true + WIN32;_DEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + true + + + Console + true + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;tbs.lib;wolftpm.lib;wolfssl.lib;%(AdditionalDependencies) + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + Level3 + true + WIN32;_DEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + true + + + Console + true + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;tbs.lib;wolftpm.lib;wolfssl.lib;%(AdditionalDependencies) + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + Level3 + true + true + true + WIN32;NDEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + true + + + Console + true + true + true + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;tbs.lib;wolftpm.lib;wolfssl.lib;%(AdditionalDependencies) + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + Level3 + true + true + true + WIN32;NDEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + true + + + Console + true + true + true + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;tbs.lib;wolftpm.lib;wolfssl.lib;%(AdditionalDependencies) + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + Level3 + true + _DEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + Default + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + MultiThreadedDebugDLL + Disabled + + + Console + true + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;tbs.lib;wolftpm.lib;wolfssl.lib;%(AdditionalDependencies) + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + Level3 + true + _DEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + true + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + + + Console + true + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;tbs.lib;wolftpm.lib;wolfssl.lib;%(AdditionalDependencies) + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + Level3 + true + true + true + NDEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + true + + + Console + true + true + true + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;tbs.lib;wolftpm.lib;wolfssl.lib;%(AdditionalDependencies) + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + Level3 + true + true + true + NDEBUG;_CONSOLE;WOLFSSL_USER_SETTINGS;WOLFTPM_USER_SETTINGS;%(PreprocessorDefinitions) + ./;../../;../../../wolfssl/;%(AdditionalIncludeDirectories) + true + + + Console + true + true + true + ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;tbs.lib;wolftpm.lib;wolfssl.lib;%(AdditionalDependencies) + $(Configuration)\$(Platform);%(AdditionalLibraryDirectories) + + + + + + + + + {73973223-5ee8-41ca-8e88-1d60e89a237b} + + + {2ba1f3ea-4146-4df5-af12-0bd33e0dd74b} + + + + + + \ No newline at end of file diff --git a/IDE/include.am b/IDE/include.am index 27237fd5..f1ffefb6 100644 --- a/IDE/include.am +++ b/IDE/include.am @@ -6,3 +6,4 @@ include IDE/STM32CUBE/include.am include IDE/OPENSTM32/include.am include IDE/IAR-EWARM/include.am include IDE/QNX/include.am +include IDE/VisualStudio/include.am diff --git a/examples/tpm_test_keys.c b/examples/tpm_test_keys.c index b9a38b44..795c6edd 100644 --- a/examples/tpm_test_keys.c +++ b/examples/tpm_test_keys.c @@ -23,7 +23,11 @@ * including stdio.h */ #if defined(__MINGW32__) || defined(__MINGW64__) -#define __USE_MINGW_ANSI_STDIO 1 + #define __USE_MINGW_ANSI_STDIO 1 +#endif +#ifdef _MSC_VER + /* hide fopen warnings on Windows Visual Studio */ + #define _CRT_SECURE_NO_WARNINGS #endif #include "tpm_test.h" diff --git a/wolftpm/visibility.h b/wolftpm/visibility.h index b7de8c1d..bd0a644f 100644 --- a/wolftpm/visibility.h +++ b/wolftpm/visibility.h @@ -31,9 +31,9 @@ */ #if defined(BUILDING_WOLFTPM) - #if defined(_MSC_VER) || defined(__CYGWIN__) || \ - defined(__MINGW32__) || defined(__MINGW64__) - #ifdef _WINDLL + #if defined(_MSC_VER) || defined(__MINGW32__) || defined(__CYGWIN__) || \ + defined(_WIN32_WCE) + #ifdef WOLFTPM_DLL #define WOLFTPM_API __declspec(dllexport) #else #define WOLFTPM_API @@ -50,8 +50,13 @@ #define WOLFTPM_LOCAL #endif /* HAVE_VISIBILITY */ #else /* BUILDING_WOLFTPM */ - #if defined(_MSC_VER) || defined(__CYGWIN__) - #define WOLFTPM_API __declspec(dllimport) + #if defined(_MSC_VER) || defined(__MINGW32__) || defined(__CYGWIN__) || \ + defined(_WIN32_WCE) + #ifdef WOLFTPM_DLL + #define WOLFTPM_API __declspec(dllimport) + #else + #define WOLFTPM_API + #endif #define WOLFTPM_LOCAL #else #define WOLFTPM_API