aboutsummaryrefslogtreecommitdiffstats
path: root/SoftHSMv2/win32
diff options
context:
space:
mode:
authorNingSun <ning.sun@intel.com>2018-02-08 08:34:03 -0800
committerNingSun <ning.sun@intel.com>2018-02-08 09:14:52 -0800
commit0c89b3ccba7c9b7332ab67ae1936aff51ca62367 (patch)
tree70c1b1d160d4c6d0a83395ca9a87c1264d0d3439 /SoftHSMv2/win32
parent945613b4db4e07f75d2bc7463db580ddfaa700fd (diff)
Initial sshsm project structure
Issue-ID: AAF-94 Change-Id: I5e82fff418e7567b161acf9b98013a9b85ffc5b4 Signed-off-by: NingSun <ning.sun@intel.com>
Diffstat (limited to 'SoftHSMv2/win32')
-rw-r--r--SoftHSMv2/win32/.gitignore35
-rw-r--r--SoftHSMv2/win32/Configure.py1167
-rw-r--r--SoftHSMv2/win32/config.h.in185
-rw-r--r--SoftHSMv2/win32/convarch/convarch.vcxproj.filters.in928
-rw-r--r--SoftHSMv2/win32/convarch/convarch.vcxproj.in374
-rw-r--r--SoftHSMv2/win32/convarch/convarch.vcxproj.user3
-rw-r--r--SoftHSMv2/win32/cryptotest/cryptotest.vcxproj.filters123
-rw-r--r--SoftHSMv2/win32/cryptotest/cryptotest.vcxproj.in127
-rw-r--r--SoftHSMv2/win32/cryptotest/cryptotest.vcxproj.user3
-rw-r--r--SoftHSMv2/win32/datamgrtest/datamgrtest.vcxproj.filters54
-rw-r--r--SoftHSMv2/win32/datamgrtest/datamgrtest.vcxproj.in104
-rw-r--r--SoftHSMv2/win32/datamgrtest/datamgrtest.vcxproj.user3
-rw-r--r--SoftHSMv2/win32/dump/dump.vcxproj.filters33
-rw-r--r--SoftHSMv2/win32/dump/dump.vcxproj.in95
-rw-r--r--SoftHSMv2/win32/dump/dump.vcxproj.user3
-rw-r--r--SoftHSMv2/win32/handlemgrtest/handlemgrtest.vcxproj.filters42
-rw-r--r--SoftHSMv2/win32/handlemgrtest/handlemgrtest.vcxproj.in100
-rw-r--r--SoftHSMv2/win32/handlemgrtest/handlemgrtest.vcxproj.user3
-rw-r--r--SoftHSMv2/win32/keyconv/keyconv.vcxproj.filters.in88
-rw-r--r--SoftHSMv2/win32/keyconv/keyconv.vcxproj.in116
-rw-r--r--SoftHSMv2/win32/keyconv/keyconv.vcxproj.user3
-rw-r--r--SoftHSMv2/win32/objstoretest/objstoretest.vcxproj.filters84
-rw-r--r--SoftHSMv2/win32/objstoretest/objstoretest.vcxproj.in114
-rw-r--r--SoftHSMv2/win32/objstoretest/objstoretest.vcxproj.user3
-rw-r--r--SoftHSMv2/win32/p11test/p11test.vcxproj.filters181
-rw-r--r--SoftHSMv2/win32/p11test/p11test.vcxproj.in159
-rw-r--r--SoftHSMv2/win32/p11test/p11test.vcxproj.user3
-rw-r--r--SoftHSMv2/win32/sessionmgrtest/sessionmgrtest.vcxproj.filters42
-rw-r--r--SoftHSMv2/win32/sessionmgrtest/sessionmgrtest.vcxproj.in100
-rw-r--r--SoftHSMv2/win32/sessionmgrtest/sessionmgrtest.vcxproj.user3
-rw-r--r--SoftHSMv2/win32/slotmgrtest/slotmgrtest.vcxproj.filters42
-rw-r--r--SoftHSMv2/win32/slotmgrtest/slotmgrtest.vcxproj.in100
-rw-r--r--SoftHSMv2/win32/slotmgrtest/slotmgrtest.vcxproj.user3
-rw-r--r--SoftHSMv2/win32/softhsm2.sln.in117
-rw-r--r--SoftHSMv2/win32/softhsm2/softhsm2.vcxproj.filters63
-rw-r--r--SoftHSMv2/win32/softhsm2/softhsm2.vcxproj.in107
-rw-r--r--SoftHSMv2/win32/softhsm2/softhsm2.vcxproj.user3
-rw-r--r--SoftHSMv2/win32/util/util.vcxproj.filters.in108
-rw-r--r--SoftHSMv2/win32/util/util.vcxproj.in130
-rw-r--r--SoftHSMv2/win32/util/util.vcxproj.user3
40 files changed, 4954 insertions, 0 deletions
diff --git a/SoftHSMv2/win32/.gitignore b/SoftHSMv2/win32/.gitignore
new file mode 100644
index 0000000..997db95
--- /dev/null
+++ b/SoftHSMv2/win32/.gitignore
@@ -0,0 +1,35 @@
+# get back config.h.in
+!config.h.in
+
+# Visual Studio
+*.opensdf
+*.sdf
+*.suo
+.vs/
+
+# Object files
+*.obj
+*.exe
+
+# Generated project files
+convarch.vcxproj
+convarch.vcxproj.filters
+cryptotest.vcxproj
+datamgrtest.vcxproj
+dump.vcxproj
+handlemgrtest.vcxproj
+keyconv.vcxproj
+keyconv.vcxproj.filters
+objstoretest.vcxproj
+p11test.vcxproj
+sessionmgrtest.vcxproj
+slotmgrtest.vcxproj
+softhsm2.vcxproj
+softhsm2.sln
+util.vcxproj
+util.vcxproj.filters
+
+# Build files
+Debug/
+Release/
+x64/ \ No newline at end of file
diff --git a/SoftHSMv2/win32/Configure.py b/SoftHSMv2/win32/Configure.py
new file mode 100644
index 0000000..a39a046
--- /dev/null
+++ b/SoftHSMv2/win32/Configure.py
@@ -0,0 +1,1167 @@
+#!python
+
+# Configure -- python version
+#
+# this script builds Visual Studio files
+
+from __future__ import print_function
+
+import sys
+import os
+import os.path
+import re
+import subprocess
+
+# files to configure
+
+filelist = ["config.h",
+ "softhsm2.sln",
+ "convarch\\convarch.vcxproj.filters",
+ "convarch\\convarch.vcxproj",
+ "cryptotest\\cryptotest.vcxproj",
+ "datamgrtest\\datamgrtest.vcxproj",
+ "dump\\dump.vcxproj",
+ "handlemgrtest\\handlemgrtest.vcxproj",
+ "keyconv\\keyconv.vcxproj.filters",
+ "keyconv\\keyconv.vcxproj",
+ "objstoretest\\objstoretest.vcxproj",
+ "p11test\\p11test.vcxproj",
+ "sessionmgrtest\\sessionmgrtest.vcxproj",
+ "slotmgrtest\\slotmgrtest.vcxproj",
+ "softhsm2\\softhsm2.vcxproj",
+ "util\\util.vcxproj.filters",
+ "util\\util.vcxproj"]
+
+# test files
+testlist = ["botan",
+ "ecc",
+ "gnump",
+ "gost",
+ "ossl",
+ "osslv",
+ "rawpss",
+ "rfc3394",
+ "rfc5649"]
+
+# variables to expand
+
+varvals = {}
+
+varnames = ["CUINCPATH",
+ "CULIBPATH",
+ "DEBUGDLLPATH",
+ "DEBUGINCPATH",
+ "DEBUGLIBPATH",
+ "DLLPATH",
+ "EXTRALIBS",
+ "INCLUDEPATH",
+ "LIBNAME",
+ "LIBPATH",
+ "PLATFORM",
+ "PLATFORMDIR",
+ "PLATFORMTOOLSET",
+ "RUNTIMELIBRARY"]
+
+# conditions to stack
+
+condvals = {}
+
+condnames = ["AESGCM",
+ "BOTAN",
+ "ECC",
+ "GOST",
+ "NONPAGE",
+ "OPENSSL",
+ "RAWPSS",
+ "RFC3394",
+ "RFC5649",
+ "TESTS"]
+
+# enable-xxx/disable-xxx arguments
+
+enablelist = ["64bit",
+ "debug",
+ "ecc",
+ "gost",
+ "keep",
+ "non-paged-memory",
+ "static-runtime",
+ "verbose"]
+
+# with-xxx/without-xxx arguments
+
+withlist = ["botan",
+ "cppunit",
+ "crypto-backend",
+ "debug-botan",
+ "debug-openssl",
+ "openssl",
+ "toolset"]
+
+# general commands
+
+commandlist = ["help", "clean"] # verbose, keep
+
+# usage
+
+usage = ["Usage: python Configure.py help",
+ " python Configure.py options*",
+ " python Configure.py clean"]
+
+# help
+
+myhelp = ["'python Configure.py' configures SoftHSMv2 build files.\n"] +\
+usage + [\
+"\nGeneral Commands:",
+" help print this help",
+" clean clean up generated files",
+" <none> print a summary of the configuration",
+"\nOptional Features:",
+" enable-verbose print messages [default=no]",
+" enable-keep keep test files after config [default=no]",
+" enable-64bit enable 64-bit compiling [default=no]",
+" enable-debug enable build of Debug config [default=yes]",
+" enable-ecc enable support for ECC [default=yes]",
+" enable-gost enable support for GOST [default=yes]",
+" enable-static-runtime enable build with static CRT (/MT) [default=no]",
+" enable-non-paged-memory enable non-paged memory [default=yes]",
+"\nOptional Packages:",
+" with-crypto-backend select the crypto backend [openssl|botan]",
+" with-botan=PATH speficy prefix of path of Botan (Release)",
+" with-debug-botan=PATH speficy prefix of path of Botan (Debug)",
+" with-openssl=PATH speficy prefix of path of OpenSSL (Release)",
+" with-debug-openssl=PATH speficy prefix of path of OpenSSL (Debug)",
+" with-cppunit=PATH specify prefix of path of CppUnit",
+" with-toolset=VALUE set Visual Studio platform toolset version (eg v110 for vs2012)",
+]
+
+# variables for parsing
+
+verbose = False
+configargs = None
+want_help = False
+want_clean = False
+want_unknown = False
+unknown_value = None
+enable_keep = False
+enable_debug = True
+enable_ecc = True
+enable_gost = True
+enable_static_runtime = False
+enable_non_paged = True
+platform = 32
+crypto_backend = "openssl"
+botan_path = "..\\..\\btn"
+debug_botan_path = None
+openssl_path = "..\\..\\ssl"
+debug_openssl_path = None
+want_tests = True
+cppunit_path = "..\\..\\cu"
+toolset = ""
+
+def dodetectplatform(visualstudio):
+ # detect platform tool set >= VS2010
+ global toolset
+
+ if "Microsoft Visual Studio 10.0" in visualstudio:
+ toolset="v100"
+ elif "Microsoft Visual Studio 11.0" in visualstudio:
+ toolset="v110"
+ elif "Microsoft Visual Studio 12.0" in visualstudio:
+ toolset="v120"
+ elif "Microsoft Visual Studio 14.0" in visualstudio:
+ toolset="v140"
+ else:
+ print("PlatformToolset for \""+visualstudio+"\" not supported")
+ toolset=""
+
+def dodetectvisualstudio():
+ """detect visual studio version"""
+ if os.environ.get('VSINSTALLDIR'):
+ dodetectplatform(os.environ.get('VSINSTALLDIR'))
+
+def parseargs(args):
+ """parse arguments"""
+ global verbose
+ global enable_keep
+ global want_help
+ global want_clean
+ global want_unknown
+ global unknown_value
+ global debug_botan_path
+ global debug_openssl_path
+ for arg in args:
+ if arg.lower() == "verbose":
+ verbose = True
+ continue
+ if arg.lower() == "keep":
+ enable_keep = True
+ continue
+ if arg.lower() == "help":
+ want_help = True
+ continue
+ di = re.match(r'disable-(.*)', arg, re.I)
+ if di:
+ appargs(arg)
+ myenable(di.group(1), False)
+ continue
+ en = re.match(r'enable-(.*)', arg, re.I)
+ if en:
+ appargs(arg)
+ myenable(en.group(1), True)
+ continue
+ wo = re.match(r'without-(.*)', arg, re.I)
+ if wo:
+ appargs(arg)
+ mywith(wo.group(1), False)
+ continue
+ wv = re.match(r'with-(.*)=(.*)', arg, re.I)
+ if wv:
+ appargs(arg)
+ if wv.group(2).lower() == "no":
+ mywith(wv.group(1), False)
+ continue
+ mywith(wv.group(1), True, wv.group(2))
+ continue
+ wi = re.match(r'with-(.*)', arg, re.I)
+ if wi:
+ appargs(arg)
+ mywith(wi.group(1), True)
+ continue
+ if arg.lower() == "clean":
+ want_clean = True
+ continue
+ want_unknown = True
+ unknown_value = arg
+ break
+
+ # debug
+ if enable_debug:
+ if debug_botan_path is None:
+ debug_botan_path = botan_path + "_d"
+ if debug_openssl_path is None:
+ debug_openssl_path = openssl_path + "_d"
+
+def appargs(arg):
+ """append seen arguments to configargs"""
+ global configargs
+ # escape backslashes, spaces and double quotes
+ escaped = ""
+
+ for x in arg:
+ if (x == "\\") or (x == " ") or (x == "\""):
+ escaped += "\\"
+ escaped += x
+ if configargs:
+ configargs += " " + escaped
+ else:
+ configargs = escaped
+
+def myenable(key, val):
+ """parse enable/disable"""
+ global platform
+ global enable_debug
+ global enable_ecc
+ global enable_gost
+ global enable_static_runtime
+ global enable_non_paged
+ global enable_keep
+ global verbose
+ global want_unknown
+ global unknown_value
+ if key.lower() == "64bit":
+ if val:
+ platform = 64
+ return
+ if key.lower() == "debug":
+ if not val:
+ enable_debug = False
+ return
+ if key.lower() == "ecc":
+ if not val:
+ enable_ecc = False
+ return
+ if key.lower() == "gost":
+ if not val:
+ enable_gost = False
+ return
+ if key.lower() == "static-runtime":
+ if val:
+ enable_static_runtime = True
+ return
+ if key.lower() == "non-paged-memory":
+ if not val:
+ enable_non_paged = False
+ return
+ if key.lower() == "keep":
+ if val:
+ enable_keep = True
+ return
+ if key.lower() == "verbose":
+ if val:
+ verbose = True
+ return
+ want_unknown = True
+ if not val:
+ unknown_value = "disable-" + key
+ else:
+ unknown_value = "enable-" + key
+
+def mywith(key, val, detail=None):
+ """parse with/without"""
+ global crypto_backend
+ global botan_path
+ global debug_botan_path
+ global openssl_path
+ global debug_openssl_path
+ global want_tests
+ global cppunit_path
+ global want_unknown
+ global unknown_value
+ global toolset
+
+ if key.lower() == "crypto-backend":
+ if val and (detail.lower() == "openssl"):
+ crypto_backend = "openssl"
+ return
+ if val and (detail.lower() == "botan"):
+ crypto_backend = "botan"
+ return
+ want_unknown = True
+ unknown_value = "with-crypto-backend=" + detail
+ return
+ if key.lower() == "botan":
+ if not val:
+ want_unknown = True
+ unknown_value = "without-botan doesn't make sense"
+ return
+ if detail.lower() != "yes":
+ botan_path = detail
+ return
+ if key.lower() == "debug-botan":
+ if not val:
+ want_unknown = True
+ unknown_value = "without-debug-botan doesn't make sense"
+ return
+ if detail.lower() != "yes":
+ debug_botan_path = detail
+ return
+ if key.lower() == "openssl":
+ if not val:
+ want_unknown = True
+ unknown_value = "without-openssl doesn't make sense"
+ return
+ if detail.lower() != "yes":
+ openssl_path = detail
+ return
+ if key.lower() == "debug-openssl":
+ if not val:
+ want_unknown = True
+ unknown_value = "without-debug-openssl doesn't make sense"
+ return
+ if detail.lower() != "yes":
+ debug_openssl_path = detail
+ return
+ if key.lower() == "cppunit":
+ if not val:
+ want_tests = False
+ return
+ if detail.lower() != "yes":
+ cppunit_path = detail
+ return
+ if key.lower() == "toolset":
+ if not val:
+ want_tests = False
+ return
+ if detail:
+ toolset=detail.lower()
+ return
+ want_unknown = True
+ if not val:
+ unknown_value = "without-" + key
+ else:
+ unknown_value = "with-" + key
+
+def dohelp():
+ """help"""
+ for line in myhelp:
+ print(line)
+ sys.exit(1)
+
+def docleantest():
+ """clean test files"""
+ for basename in testlist:
+ filename = "test" + basename + ".c"
+ if os.path.isfile(filename):
+ os.unlink(filename)
+ filename = "test" + basename + ".cpp"
+ if os.path.isfile(filename):
+ os.unlink(filename)
+ filename = "test" + basename + ".obj"
+ if os.path.isfile(filename):
+ os.unlink(filename)
+ filename = "test" + basename + ".exe"
+ if os.path.isfile(filename):
+ os.unlink(filename)
+ if os.path.isfile("botan.dll"):
+ os.unlink("botan.dll")
+ if os.path.isfile("libeay32.dll"):
+ os.unlink("libeay32.dll")
+ if os.path.isfile("libeaycompat32.dll"):
+ os.unlink("libeaycompat32.dll")
+ if os.path.isfile("libcrypto-1_1.dll"):
+ os.unlink("libcrypto-1_1.dll")
+ if os.path.isfile("libcrypto-1_1-x64.dll"):
+ os.unlink("libcrypto-1_1-x64.dll")
+
+def doclean():
+ """clean"""
+ docleantest()
+ for filename in filelist:
+ if os.path.isfile(filename):
+ os.unlink(filename)
+ sys.exit(0)
+
+def dounknown():
+ """parsing error"""
+ print("can't parse " + unknown_value + "", file=sys.stderr)
+ sys.exit(1)
+
+def doconfig():
+ """config itself"""
+ global botan_path
+ global debug_botan_path
+ global openssl_path
+ global debug_openssl_path
+ global cppunit_path
+
+ # configure the platform
+ if platform == 32:
+ varvals["PLATFORM"] = "Win32"
+ else:
+ varvals["PLATFORM"] = "x64"
+ varvals["PLATFORMDIR"] = "x64\\"
+
+ # configure the runtime library
+ if enable_static_runtime:
+ varvals["RUNTIMELIBRARY"] = "MultiThreaded"
+ else:
+ varvals["RUNTIMELIBRARY"] = "MultiThreadedDLL"
+
+ # configure ECC and GOST
+ if enable_ecc:
+ condvals["ECC"] = True
+ if enable_gost:
+ condvals["GOST"] = True
+
+ # configure the crypto
+ if crypto_backend == "botan":
+ condvals["BOTAN"] = True
+ varvals["LIBNAME"] = "botan.lib"
+ botan_path = os.path.abspath(botan_path)
+ botan_inc = os.path.join(botan_path, "include")
+ botan_dll = ""
+ if os.path.exists(os.path.join(botan_inc, "botan-2\\botan\\init.h")):
+ varvals["INCLUDEPATH"] = os.path.join(botan_inc, "botan-2")
+ elif os.path.exists(os.path.join(botan_inc, "botan-1.11\\botan\\init.h")):
+ varvals["INCLUDEPATH"] = os.path.join(botan_inc, "botan-1.11")
+ elif os.path.exists(os.path.join(botan_inc, "botan\\init.h")):
+ varvals["INCLUDEPATH"] = botan_inc
+ else:
+ print("can't find Botan includes", file=sys.stderr)
+ sys.exit(1)
+ if os.path.exists(os.path.join(botan_path, "lib\\botan.lib")):
+ varvals["LIBPATH"] = os.path.join(botan_path, "lib")
+ botan_dll = os.path.join(botan_path, "lib\\botan.dll")
+ elif os.path.exists(os.path.join(botan_path, "botan.lib")):
+ varvals["LIBPATH"] = botan_path
+ botan_dll = os.path.join(botan_path, "botan.dll")
+ else:
+ print("can't find Botan library", file=sys.stderr)
+ sys.exit(1)
+ varvals["DLLPATH"] = botan_dll
+ if enable_debug:
+ debug_botan_path = os.path.abspath(debug_botan_path)
+ debug_botan_inc = os.path.join(debug_botan_path, "include")
+ debug_botan_dll = ""
+ if os.path.exists(os.path.join(debug_botan_inc, "botan-2\\botan\\init.h")):
+ varvals["DEBUGINCPATH"] = os.path.join(debug_botan_inc, "botan-2")
+ elif os.path.exists(os.path.join(debug_botan_inc, "botan-1.11\\botan\\init.h")):
+ varvals["DEBUGINCPATH"] = os.path.join(debug_botan_inc, "botan-1.11")
+ elif os.path.exists(os.path.join(debug_botan_inc, "botan\\init.h")):
+ varvals["DEBUGINCPATH"] = debug_botan_inc
+ else:
+ print("can't find debug Botan includes", file=sys.stderr)
+ sys.exit(1)
+ if os.path.exists(os.path.join(debug_botan_path, "lib\\botan.lib")):
+ varvals["DEBUGLIBPATH"] = os.path.join(debug_botan_path, "lib")
+ debug_botan_dll = os.path.join(debug_botan_path, "lib\\botan.dll")
+ if os.path.exists(os.path.join(debug_botan_path, "botan.lib")):
+ varvals["DEBUGLIBPATH"] = debug_botan_path
+ debug_botan_dll = os.path.join(debug_botan_path, "botan.dll")
+ else:
+ print("can't find debug Botan library", file=sys.stderr)
+ sys.exit(1)
+ varvals["DEBUGDLLPATH"] = debug_botan_dll
+ else:
+ varvals["DEBUGDLLPATH"] = varvals["DLLPATH"]
+ varvals["DEBUGINCPATH"] = varvals["INCLUDEPATH"]
+ varvals["DEBUGLIBPATH"] = varvals["LIBPATH"]
+
+ # Botan version
+ if verbose:
+ print("checking Botan version")
+ botan_version_major = 0
+ botan_version_minor = 0
+ system_libs = []
+ if os.path.exists(botan_dll):
+ subprocess.call(["copy", botan_dll, "."], shell=True)
+ else:
+ system_libs = ["user32.lib", "advapi32.lib"]
+ inc = varvals["INCLUDEPATH"]
+ lib = os.path.join(varvals["LIBPATH"], "botan.lib")
+ testfile = open("testbotan.cpp", "w")
+ print('\
+#include <botan/version.h>\n\
+int main() {\n\
+#if BOTAN_VERSION_CODE >= BOTAN_VERSION_CODE_FOR(2,0,0)\n\
+ return 3;\n\
+#elif BOTAN_VERSION_CODE >= BOTAN_VERSION_CODE_FOR(1,11,0)\n\
+ return 2;\n\
+#elif BOTAN_VERSION_CODE >= BOTAN_VERSION_CODE_FOR(1,10,0)\n\
+ return 1;\n\
+#else\n\
+ return 0;\n\
+#endif\n\
+}', file=testfile)
+ testfile.close()
+ command = ["cl", "/nologo", "/MD", "/I", inc, "testbotan.cpp", lib]
+ command.extend(system_libs)
+ subprocess.check_output(command, stderr=subprocess.STDOUT)
+ if not os.path.exists(".\\testbotan.exe"):
+ print("can't create .\\testbotan.exe", file=sys.stderr)
+ sys.exit(1)
+ ret = subprocess.call(".\\testbotan.exe")
+ if ret == 0:
+ print("Botan version too old", file=sys.stderr)
+ sys.exit(1)
+ elif ret == 1:
+ botan_version_major = 1
+ botan_version_minor = 10
+ elif ret == 2:
+ botan_version_major = 1
+ botan_version_minor = 11
+ print("Botan version 1.11 not yet supported", file=sys.stderr)
+ sys.exit(1)
+ elif ret == 3:
+ botan_version_major = 2
+ botan_version_minor = 0
+ print("Botan version 2.0 not yet supported", file=sys.stderr)
+ sys.exit(1)
+ else:
+ print("Botan test failed", file=sys.stderr)
+ sys.exit(1)
+
+ # Botan ECC support
+ if enable_ecc:
+ if verbose:
+ print("checking Botan ECC support")
+ testfile = open("testecc.cpp", "w")
+ print('\
+#include <botan/init.h>\n\
+#include <botan/ec_group.h>\n\
+#include <botan/oids.h>\n\
+#include <botan/version.h>\n\
+int main() {\n\
+ Botan::LibraryInitializer::initialize();\n\
+ const std::string name("secp256r1");\n\
+ const Botan::OID oid(Botan::OIDS::lookup(name));\n\
+ const Botan::EC_Group ecg(oid);\n\
+ try {\n\
+#if BOTAN_VERSION_CODE >= BOTAN_VERSION_CODE_FOR(1,11,0)\n\
+ const std::vector<Botan::byte> der =\n\
+ ecg.DER_encode(Botan::EC_DOMPAR_ENC_OID);\n\
+#else\n\
+ const Botan::SecureVector<Botan::byte> der =\n\
+ ecg.DER_encode(Botan::EC_DOMPAR_ENC_OID);\n\
+#endif\n\
+ } catch(...) {\n\
+ return 1;\n\
+ }\n\
+ return 0;\n\
+}', file=testfile)
+ testfile.close()
+ command = ["cl", "/nologo", "/MD", "/I", inc, "testecc.cpp", lib]
+ command.extend(system_libs)
+ subprocess.check_output(command, stderr=subprocess.STDOUT)
+ if not os.path.exists(".\\testecc.exe"):
+ print("can't create .\\testecc.exe", file=sys.stderr)
+ sys.exit(1)
+ if subprocess.call(".\\testecc.exe") != 0:
+ print("can't find P256: upgrade to Botan >= 1.10.6", file=sys.stderr)
+ sys.exit(1)
+
+ # Botan GOST support
+ if enable_gost:
+ if verbose:
+ print("checking Botan GOST support")
+ testfile = open("testgost.cpp", "w")
+ print('\
+#include <botan/init.h>\n\
+#include <botan/gost_3410.h>\n\
+#include <botan/oids.h>\n\
+#include <botan/version.h>\n\
+int main() {\n\
+ Botan::LibraryInitializer::initialize();\n\
+ const std::string name("gost_256A");\n\
+ const Botan::OID oid(Botan::OIDS::lookup(name));\n\
+ const Botan::EC_Group ecg(oid);\n\
+ try {\n\
+#if BOTAN_VERSION_CODE >= BOTAN_VERSION_CODE_FOR(1,11,0)\n\
+ const std::vector<Botan::byte> der =\n\
+ ecg.DER_encode(Botan::EC_DOMPAR_ENC_OID);\n\
+#else\n\
+ const Botan::SecureVector<Botan::byte> der =\n\
+ ecg.DER_encode(Botan::EC_DOMPAR_ENC_OID);\n\
+#endif\n\
+ } catch(...) {\n\
+ return 1;\n\
+ }\n\
+ return 0;\n\
+}', file=testfile)
+ testfile.close()
+ command = ["cl", "/nologo", "/MD", "/I", inc, "testgost.cpp", lib]
+ command.extend(system_libs)
+ subprocess.check_output(command, stderr=subprocess.STDOUT)
+ if not os.path.exists(".\\testgost.exe"):
+ print("can't create .\\testgost.exe", file=sys.stderr)
+ sys.exit(1)
+ if subprocess.call(".\\testgost.exe") != 0:
+ print("can't find GOST: upgrade to Botan >= 1.10.6", file=sys.stderr)
+ sys.exit(1)
+
+ # no check for Botan RFC3394 support
+ condvals["RFC3394"] = True
+
+ # Botan RFC5649 support
+ if verbose:
+ print("checking Botan RFC5649 support")
+ testfile = open("testrfc5649.cpp", "w")
+ print('\
+#include <botan/botan.h>\n\
+#include <botan/rfc3394.h>\n\
+#include <botan/version.h>\n\
+using namespace Botan;\n\
+int main() {\n\
+#if BOTAN_VERSION_CODE >= BOTAN_VERSION_CODE_FOR(1,11,0)\n\
+ secure_vector<byte> key(10);\n\
+ SymmetricKey kek("AABB");\n\
+ secure_vector<byte> x = rfc5649_keywrap(key, kek);\n\
+#else\n\
+ SecureVector<byte> key(10);\n\
+ SymmetricKey kek("AABB");\n\
+ Algorithm_Factory& af = global_state().algorithm_factory();\n\
+ SecureVector<byte> x = rfc5649_keywrap(key, kek, af);\n\
+#endif\n\
+ return 1;\n\
+}', file=testfile)
+ testfile.close()
+ command = ["cl", "/nologo", "/MD", "/EHsc","/I", inc, "testrfc5649.cpp", lib]
+ command.extend(system_libs)
+ subprocess.call(command)
+ if os.path.exists(".\\testrfc5649.exe"):
+ if verbose:
+ print("Found AES key wrap with pad")
+ condvals["RFC5649"] = True
+ else:
+ if verbose:
+ print("can't compile Botan AES key wrap with pad")
+
+ # Botan GNU MP support
+ if botan_version_major == 1 and botan_version_minor == 10:
+ if verbose:
+ print("checking Botan GNU MP support")
+ testfile = open("testgnump.cpp", "w")
+ print('\
+#include <botan/build.h>\n\
+int main() {\n\
+#ifndef BOTAN_HAS_ENGINE_GNU_MP\n\
+#error "No GNU MP support";\n\
+#endif\n\
+}', file=testfile)
+ testfile.close()
+ command = ["cl", "/nologo", "/MD", "/I", inc, "testgnump.cpp", lib]
+ command.extend(system_libs)
+ subprocess.call(command)
+ if os.path.exists(".\\testgnump.exe"):
+ if verbose:
+ print("Botan GNU MP is supported")
+ else:
+ if verbose:
+ print("Botan GNU MP is not supported")
+
+ # Botan raw PSS support
+ if verbose:
+ print("checking Botan raw PSS support")
+ testfile = open("testrawpss.cpp", "w")
+ print('\
+#include <botan/botan.h>\n\
+#include <botan/version.h>\n\
+int main() {\n\
+#if BOTAN_VERSION_CODE >= BOTAN_VERSION_CODE_FOR(2,3,0)\n\
+ return 0;\n\
+#endif\n\
+ return 1;\n\
+}', file=testfile)
+ testfile.close()
+ command = ["cl", "/nologo", "/MD", "/I", inc, "testrawpss.cpp", lib]
+ command.extend(system_libs)
+ subprocess.check_output(command, stderr=subprocess.STDOUT)
+ if not os.path.exists(".\\testrawpss.exe"):
+ if verbose:
+ print("can't create .\\testrawpss.exe", file=sys.stderr)
+ else:
+ if subprocess.call(".\\testrawpss.exe") != 0:
+ if verbose:
+ print("can't find raw PSS: upgrade to Botan >= 2.3.0", file=sys.stderr)
+ else:
+ condvals["RAWPSS"] = True
+
+ else:
+
+ condvals["OPENSSL"] = True
+ varvals["EXTRALIBS"] = "crypt32.lib;ws2_32.lib;"
+ openssl_path = os.path.abspath(openssl_path)
+ openssl_inc = os.path.join(openssl_path, "include")
+ if not os.path.exists(os.path.join(openssl_inc, "openssl\\ssl.h")):
+ print("can't find OpenSSL headers", file=sys.stderr)
+ sys.exit(1)
+ varvals["INCLUDEPATH"] = openssl_inc
+ openssl_lib = os.path.join(openssl_path, "lib")
+ openssl_lib_name = ""
+ openssl_lib_dll = ""
+ if os.path.exists(os.path.join(openssl_lib, "libeay32.lib")):
+ openssl_lib_name = "libeay32.lib"
+ openssl_lib_dll = "bin\\libeay32.dll"
+ elif os.path.exists(os.path.join(openssl_lib, "libeaycompat32.lib")):
+ openssl_lib_name = "libeaycompat32.lib"
+ openssl_lib_dll = "bin\\libeaycompat32.dll"
+ elif os.path.exists(os.path.join(openssl_lib, "libcrypto.lib")):
+ openssl_lib_name = "libcrypto.lib"
+ if platform == 32:
+ openssl_lib_dll = "bin\\libcrypto-1_1.dll"
+ else:
+ openssl_lib_dll = "bin\\libcrypto-1_1-x64.dll"
+
+ else:
+ print("can't find OpenSSL library", file=sys.stderr)
+ sys.exit(1)
+ openssl_dll = os.path.join(openssl_path,openssl_lib_dll)
+ varvals["LIBPATH"] = openssl_lib
+ varvals["LIBNAME"] = openssl_lib_name
+ varvals["DLLPATH"] = openssl_dll
+ if enable_debug:
+ debug_openssl_path = os.path.abspath(debug_openssl_path)
+ varvals["DEBUGDLLPATH"] = \
+ os.path.join(debug_openssl_path, openssl_lib_dll)
+ debug_openssl_inc = os.path.join(debug_openssl_path, "include")
+ if not os.path.exists(os.path.join(debug_openssl_inc,
+ "openssl\\ssl.h")):
+ print("can't find debug OpenSSL headers", file=sys.stderr)
+ sys.exit(1)
+ varvals["DEBUGINCPATH"] = debug_openssl_inc
+ debug_openssl_lib = os.path.join(debug_openssl_path, "lib")
+ if not os.path.exists(os.path.join(debug_openssl_lib,
+ openssl_lib_name)):
+ print("can't find debug OpenSSL library", file=sys.stderr)
+ sys.exit(1)
+ varvals["DEBUGLIBPATH"] = debug_openssl_lib
+ else:
+ varvals["DEBUGDLLPATH"] = varvals["DLLPATH"]
+ varvals["DEBUGINCPATH"] = varvals["INCLUDEPATH"]
+ varvals["DEBUGLIBPATH"] = varvals["LIBPATH"]
+
+ # OpenSSL support
+ if verbose:
+ print("checking OpenSSL")
+ system_libs = []
+ if os.path.exists(openssl_dll):
+ subprocess.call(["copy", openssl_dll, "."], shell=True)
+ else:
+ system_libs = ["user32.lib", "advapi32.lib", "gdi32.lib", "crypt32.lib", "ws2_32.lib"]
+ inc = openssl_inc
+ lib = os.path.join(openssl_lib, openssl_lib_name)
+ testfile = open("testossl.c", "w")
+ print('\
+#include <openssl/err.h>\n\
+int main() {\n\
+ ERR_clear_error();\n\
+ return 0;\n\
+}', file=testfile)
+ testfile.close()
+ command = ["cl", "/nologo", "/MD", "/I", inc, "testossl.c", lib]
+ command.extend(system_libs)
+ subprocess.check_output(command, stderr=subprocess.STDOUT)
+ if not os.path.exists(".\\testossl.exe"):
+ print("can't create .\\testossl.exe", file=sys.stderr)
+ sys.exit(1)
+ if subprocess.call(".\\testossl.exe") != 0:
+ print("OpenSSL test failed", file=sys.stderr)
+ sys.exit(1)
+
+ # OpenSSL version
+ if verbose:
+ print("checking OpenSSL version")
+ testfile = open("testosslv.c", "w")
+ print('\
+#include <openssl/ssl.h>\n\
+#include <openssl/opensslv.h>\n\
+int main() {\n\
+#ifndef OPENSSL_VERSION_NUMBER\n\
+ return -1;\n\
+#endif\n\
+#if OPENSSL_VERSION_NUMBER >= 0x010000000L\n\
+ return 0;\n\
+#else\n\
+ return 1;\n\
+#endif\n\
+}', file=testfile)
+ testfile.close()
+ command = ["cl", "/nologo", "/MD", "/I", inc, "testosslv.c", lib]
+ command.extend(system_libs)
+ subprocess.check_output(command, stderr=subprocess.STDOUT)
+ if not os.path.exists(".\\testosslv.exe"):
+ print("can't create .\\testosslv.exe", file=sys.stderr)
+ sys.exit(1)
+ if subprocess.call(".\\testosslv.exe") != 0:
+ print("OpenSLL version too old (1.0.0 or later required)", file=sys.stderr)
+ sys.exit(1)
+
+ # OpenSSL ECC support
+ if enable_ecc:
+ if verbose:
+ print("checking OpenSSL ECC support")
+ testfile = open("testecc.c", "w")
+ print('\
+#include <openssl/ecdsa.h>\n\
+#include <openssl/objects.h>\n\
+int main() {\n\
+ EC_KEY *ec256, *ec384, *ec521;\n\
+ ec256 = EC_KEY_new_by_curve_name(NID_X9_62_prime256v1);\n\
+ ec384 = EC_KEY_new_by_curve_name(NID_secp384r1);\n\
+ ec521 = EC_KEY_new_by_curve_name(NID_secp521r1);\n\
+ if (ec256 == NULL || ec384 == NULL || ec521 == NULL)\n\
+ return 1;\n\
+ return 0;\n\
+}', file=testfile)
+ testfile.close()
+ command = ["cl", "/nologo", "/MD", "/I", inc, "testecc.c", lib]
+ command.extend(system_libs)
+ subprocess.check_output(command, stderr=subprocess.STDOUT)
+ if not os.path.exists(".\\testecc.exe"):
+ print("can't create .\\testecc.exe", file=sys.stderr)
+ sys.exit(1)
+ if subprocess.call(".\\testecc.exe") != 0:
+ print("can't find P256, P384, or P521: no ECC support", file=sys.stderr)
+ sys.exit(1)
+
+ # OpenSSL GOST support
+ if enable_gost:
+ if verbose:
+ print("checking OpenSSL GOST support")
+ testfile = open("testgost.c", "w")
+ print('\
+#include <openssl/conf.h>\n\
+#include <openssl/engine.h>\n\
+#include <openssl/crypto.h>\n\
+#include <openssl/opensslv.h>\n\
+int main() {\n\
+ ENGINE *eg;\n\
+ const EVP_MD* EVP_GOST_34_11;\n\
+ OpenSSL_add_all_algorithms();\n\
+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)\n\
+ ENGINE_load_builtin_engines();\n\
+#else\n\
+ OPENSSL_init_crypto(OPENSSL_INIT_ENGINE_ALL_BUILTIN | OPENSSL_INIT_LOAD_CONFIG, NULL);\n\
+#endif\n\
+ eg = ENGINE_by_id("gost");\n\
+ if (eg == NULL)\n\
+ return 1;\n\
+ if (ENGINE_init(eg) <= 0)\n\
+ return 1;\n\
+ EVP_GOST_34_11 = ENGINE_get_digest(eg, NID_id_GostR3411_94);\n\
+ if (EVP_GOST_34_11 == NULL)\n\
+ return 1;\n\
+ if (ENGINE_register_pkey_asn1_meths(eg) <= 0)\n\
+ return 1;\n\
+ if (ENGINE_ctrl_cmd_string(eg, "CRYPT_PARAMS",\n\
+ "id-Gost28147-89-CryptoPro-A-ParamSet", 0) <= 0)\n\
+ return 1;\n\
+ return 0;\n\
+}', file=testfile)
+ testfile.close()
+ command = ["cl", "/nologo", "/MD", "/I", inc, "testgost.c", lib]
+ command.extend(system_libs)
+ subprocess.check_output(command, stderr=subprocess.STDOUT)
+ if not os.path.exists(".\\testgost.exe"):
+ print("can't create .\\testgost.exe", file=sys.stderr)
+ sys.exit(1)
+ if subprocess.call(".\\testgost.exe") != 0:
+ print("can't find GOST: no GOST support", file=sys.stderr)
+ sys.exit(1)
+
+ # OpenSSL EVP interface for AES key wrapping (aka RFC 3394)
+ if verbose:
+ print("checking OpenSSL EVP interface for AES key wrapping")
+ testfile = open("testrfc3394.c", "w")
+ print('\
+#include <openssl/evp.h>\n\
+int main() {\n\
+ EVP_aes_128_wrap();\n\
+ return 1;\n\
+}', file=testfile)
+ testfile.close()
+ command = ["cl", "/nologo", "/MD", "/I", inc, "testrfc3394.c", lib]
+ command.extend(system_libs)
+ subprocess.call(command)
+ if os.path.exists(".\\testrfc3394.exe"):
+ if verbose:
+ print("RFC 3394 is supported")
+ condvals["RFC3394"] = True
+ else:
+ if verbose:
+ print("can't compile OpenSSL RFC 3394")
+
+ # OpenSSL EVP interface for AES key wrap with pad (aka RFC 5649)
+ if verbose:
+ print("checking OpenSSL EVP interface for AES key wrapping with pad")
+ testfile = open("testrfc5649.c", "w")
+ print('\
+#include <openssl/evp.h>\n\
+int main() {\n\
+ EVP_aes_128_wrap_pad();\n\
+ return 1;\n\
+}', file=testfile)
+ testfile.close()
+ command = ["cl", "/nologo", "/MD", "/I", inc, "testrfc5649.c", lib]
+ command.extend(system_libs)
+ subprocess.call(command)
+ if os.path.exists(".\\testrfc5649.exe"):
+ if verbose:
+ print("RFC 5649 is supported")
+ condvals["RFC5649"] = True
+ else:
+ if verbose:
+ print("can't compile OpenSSL RFC 5649")
+
+ # no check for OpenSSL raw PSS support
+ condvals["RAWPSS"] = True
+ # no check for OpenSSL AES GCM
+ condvals["AESGCM"] = True
+
+ # configure CppUnit
+ if want_tests:
+ condvals["TESTS"] = True
+ cppunit_path = os.path.abspath(cppunit_path)
+ cppunit_inc = os.path.join(cppunit_path, "include")
+ if not os.path.exists(os.path.join(cppunit_inc, "cppunit\\Test.h")):
+ print("can't find CppUnit headers", file=sys.stderr)
+ sys.exit(1)
+ varvals["CUINCPATH"] = cppunit_inc
+ cppunit_lib = os.path.join(cppunit_path, "lib")
+ if not os.path.exists(os.path.join(cppunit_lib, "cppunit.lib")):
+ cppunit_lib = cppunit_path
+ if not os.path.exists(os.path.join(cppunit_lib, "cppunit.lib")):
+ print("can't find CppUnit library", file=sys.stderr)
+ sys.exit(1)
+ if enable_debug:
+ if not os.path.exists(os.path.join(cppunit_lib, "cppunitd.lib")):
+ print("can't find debug CppUnit library", file=sys.stderr)
+ sys.exit(1)
+ varvals["CULIBPATH"] = cppunit_lib
+
+ # misc
+ if enable_non_paged:
+ condvals["NONPAGE"] = True
+
+def kw(path):
+ """escape spaces"""
+ if re.search(r' ', path):
+ return '"' + path + '"'
+ else:
+ return path
+
+def setupfile(filename):
+ """setup files with condition stacks and variable expansions"""
+ cond = "@@@"
+ conds = []
+ passing = True
+ passes = []
+ filein = open(filename + ".in", "r")
+ fileout = open(filename, "w")
+
+ for line in filein:
+ line = line.rstrip("\r\n")
+ cif = re.match(r'@IF (.*)', line)
+ if cif:
+ conds.append(cond)
+ passes.append(passing)
+ cond = cif.group(1)
+ if condvals.get(cond):
+ # do nothing
+ pass
+ else:
+ passing = False
+ continue
+ celse = re.match(r'@ELSE (.*)', line)
+ if celse:
+ if cond != celse.group(1):
+ raise SyntaxError("@ELSE " + celse.group(1) +
+ " mismatch in " + filename)
+ if condvals.get(cond):
+ passing = False
+ else:
+ if len(passes) > 0:
+ passing = passes[-1]
+ else:
+ passing = True
+ continue
+ cend = re.match(r'@END (.*)', line)
+ if cend:
+ if cond != cend.group(1):
+ raise SyntaxError("@END " + cend.group(1) +
+ " mismatch in " + filename)
+ cond = conds.pop()
+ if len(passes) > 0:
+ passing = passes.pop()
+ else:
+ passing = True
+ continue
+ if not passing:
+ continue
+ while True:
+ vm = re.match(r'([^@]*)@([^@ ]*)@(.*)', line)
+ if vm:
+ if vm.group(2) in varnames:
+ if varvals.get(vm.group(2)):
+ val = kw(varvals[vm.group(2)])
+ else:
+ val = ""
+ line = vm.group(1) + val + vm.group(3)
+ continue
+ else:
+ raise SyntaxError("unknown control @" + vm.group(2) +
+ "@ in " + filename)
+ break
+ print(line, file=fileout)
+ if verbose:
+ print("Setting up " + filename)
+ filein.close()
+ fileout.close()
+
+def main(args):
+ """run it"""
+
+ # no arguments -> usage
+ if len(args) <= 1:
+ for line in usage:
+ print(line)
+ sys.exit(1)
+
+ parseargs(args[1:])
+
+ if want_help:
+ dohelp()
+ if want_clean:
+ doclean()
+ if want_unknown:
+ dounknown()
+ if not toolset:
+ dodetectvisualstudio()
+ if not toolset:
+ print("Build skipped. To build, this file needs to run from VS command prompt.")
+ sys.exit(1)
+
+ varvals["PLATFORMTOOLSET"] = toolset
+
+ # status before config
+ if verbose:
+ if enable_keep:
+ print("keep: enabled")
+ else:
+ print("keep: disabled")
+ if platform == 64:
+ print("64bit: enabled")
+ else:
+ print("64bit: disabled")
+ if enable_debug:
+ print("debug: enabled")
+ else:
+ print("debug: disabled")
+ if enable_ecc:
+ print("ecc: enabled")
+ else:
+ print("ecc: disabled")
+ if enable_gost:
+ print("gost: enabled")
+ else:
+ print("gost: disabled")
+ if enable_non_paged:
+ print("non-paged-memory: enabled")
+ else:
+ print("non-paged-memory: disabled")
+ print("crypto-backend: " + crypto_backend)
+ if crypto_backend == "botan":
+ print("botan-path: " + botan_path)
+ if enable_debug:
+ print("debug-botan-path: " + debug_botan_path)
+ else:
+ print("openssl-path: " + openssl_path)
+ if enable_debug:
+ print("debug-openssl-path: " + debug_openssl_path)
+ if want_tests:
+ print("cppunit-path: " + cppunit_path)
+ print("toolset: "+toolset)
+
+
+ doconfig()
+
+ # status after config
+ if verbose:
+ print("Configuration Status")
+ print("\tconditions:")
+ for name in condnames:
+ if condvals.get(name):
+ print("\t\t" + name + " is true")
+ else:
+ print("\t\t" + name + " is false")
+ print("\tsubstitutions:")
+ for name in varnames:
+ if varvals.get(name):
+ print("\t\t" + name + '-> "' + varvals[name] + '"')
+ print()
+
+ for filename in filelist:
+ setupfile(filename)
+
+ # clean test file
+ if not enable_keep:
+ docleantest()
+
+ print("Configured.")
+ sys.exit(0)
+
+main(sys.argv)
+
+# Notes: Unix configure.ac options
+# --enable-64bit supported
+# --enable-ecc supported
+# --enable-gost supported
+# --enable-non-paged-memory supported
+# --enable-visibility (enforced by DLLs)
+# --with-crypto-backend supported
+# --with-botan supported (Release and Debug)
+# --with-openssl supported (Release and Debug)
+# --with-migrate (useless as SoftHSMv1 is not supported)
+# --with-objectstore-backend-db (TODO)
+# --with-sqlite3 (useless until objectstore backend can be chosen)
diff --git a/SoftHSMv2/win32/config.h.in b/SoftHSMv2/win32/config.h.in
new file mode 100644
index 0000000..f2b56ba
--- /dev/null
+++ b/SoftHSMv2/win32/config.h.in
@@ -0,0 +1,185 @@
+/* config.h for WIN32 */
+
+/* The default log level */
+#define DEFAULT_LOG_LEVEL "INFO"
+
+/* Default storage backend for token objects */
+#define DEFAULT_OBJECTSTORE_BACKEND "file"
+
+/* The default PKCS#11 library */
+#define DEFAULT_PKCS11_LIB "softhsm2.dll"
+
+/* The default location of softhsm2.conf */
+#define DEFAULT_SOFTHSM2_CONF "softhsm2.conf"
+
+/* The default location of the token directory */
+#define DEFAULT_TOKENDIR "tokens"
+
+/* Define if advanced AES key wrap without pad is supported */
+@IF RFC3394
+#define HAVE_AES_KEY_WRAP 1
+@ELSE RFC3394
+#undef HAVE_AES_KEY_WRAP
+@END RFC3394
+
+/* Define if advanced AES key wrap with pad is supported */
+@IF RFC5649
+#define HAVE_AES_KEY_WRAP_PAD 1
+@ELSE RFC5649
+#undef HAVE_AES_KEY_WRAP_PAD
+@END RFC5649
+
+/* Whether LoadLibrary is available */
+#define HAVE_LOADLIBRARY 1
+
+/* Define to 1 if you have the <sqlite3.h> header file. */
+#undef HAVE_SQLITE3_H
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#define HAVE_STDLIB_H 1
+
+/* Define to 1 if you have the <string.h> header file. */
+#define HAVE_STRING_H 1
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#define HAVE_SYS_STAT_H 1
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#define HAVE_SYS_TYPES_H 1
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#undef HAVE_UNISTD_H
+
+/* Maximum PIN length */
+#define MAX_PIN_LEN 255
+
+/* Minimum PIN length */
+#define MIN_PIN_LEN 4
+
+/* Name of package */
+#define PACKAGE "softhsm"
+
+/* Define to the address where bug reports for this package should be sent. */
+#define PACKAGE_BUGREPORT ""
+
+/* Define to the full name of this package. */
+#define PACKAGE_NAME "SoftHSM"
+
+/* Define to the full name and version of this package. */
+#define PACKAGE_STRING "SoftHSM 2.3.0"
+
+/* Define to the one symbol short name of this package. */
+#define PACKAGE_TARNAME "softhsm"
+
+/* Define to the home page for this package. */
+#define PACKAGE_URL ""
+
+/* Define to the version of this package. */
+#define PACKAGE_VERSION "2.3.0"
+
+/* Non-paged memory for secure storage */
+@IF NONPAGE
+#define SENSITIVE_NON_PAGE 1
+@ELSE NONPAGE
+#undef SENSITIVE_NON_PAGE
+@END NONPAGE
+
+/* Define to 1 if you have the ANSI C header files. */
+#undef STDC_HEADERS
+
+/* Version number of package */
+#define VERSION "2.3.0"
+
+/* SoftHSM major version number via PKCS#11 */
+#define VERSION_MAJOR 2
+
+/* SoftHSM minor version number via PKCS#11 */
+#define VERSION_MINOR 3
+
+/* Compile with Botan support */
+@IF BOTAN
+#define WITH_BOTAN 1
+@ELSE BOTAN
+#undef WITH_BOTAN
+@END BOTAN
+
+/* Compile with ECC support */
+@IF ECC
+#define WITH_ECC 1
+@ELSE ECC
+#undef WITH_ECC
+@END ECC
+
+/* Compile with GOST support */
+@IF GOST
+#define WITH_GOST 1
+@ELSE GOST
+#undef WITH_GOST
+@END GOST
+
+/* Compile with OpenSSL support */
+@IF OPENSSL
+#define WITH_OPENSSL 1
+@ELSE OPENSSL
+#undef WITH_OPENSSL
+@END OPENSSL
+
+/* Compile with raw PSS support */
+@IF RAWPSS
+#define WITH_RAW_PSS 1
+@ELSE RAWPSS
+#undef WITH_RAW_PSS
+@END RAWPSS
+
+/* Compile with AES GCM support */
+@IF AESGCM
+#define WITH_AES_GCM 1
+@ELSE AESGCM
+#undef WITH_AES_GCM
+@END AESGCM
+
+/* Define to 1 if you have getpassphrase(). */
+#define HAVE_GETPASSPHRASE
+
+/* Addition things */
+
+char *getpassphrase(const char *prompt);
+int setenv(const char *name, const char *value, int overwrite);
+
+/* At least Vista */
+
+#ifndef _WIN32_WINNT
+#define _WIN32_WINNT 0x0600
+#endif
+
+#if _MSC_VER < 1900
+#define snprintf _snprintf
+#endif
+#define strcasecmp _stricmp
+#define strncasecmp _strnicmp
+
+/* Prevent inclusion of winsock.h in windows.h */
+
+#define WIN32_LEAN_AND_MEAN 1
+
+#include <windows.h>
+
+/* avoid collision from min and max macros */
+
+#undef min
+#undef max
+
+@IF BOTAN
+/* For Botan */
+
+#pragma warning(disable: 4275 4267)
+@END BOTAN
+
+/* Temporary for debug */
+
+#undef DEBUG_LOG_STDERR
+// #define DEBUG_LOG_STDERR 1
+
+/* To avoid unsafe warnings (off) */
+
+// #pragma warning(disable: 4996)
diff --git a/SoftHSMv2/win32/convarch/convarch.vcxproj.filters.in b/SoftHSMv2/win32/convarch/convarch.vcxproj.filters.in
new file mode 100644
index 0000000..d3c84f1
--- /dev/null
+++ b/SoftHSMv2/win32/convarch/convarch.vcxproj.filters.in
@@ -0,0 +1,928 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ <Filter Include="Common Header Files">
+ <UniqueIdentifier>{b657b1af-4cc4-4d97-ba6a-0a7231c5f243}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Common Source Files">
+ <UniqueIdentifier>{aacfc93a-d2e0-4935-aa15-ea0d3690fbcd}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Crypto Header Files">
+ <UniqueIdentifier>{6337c51f-53e3-440a-9ab9-40f0b9a4f26e}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Crypto Source Files">
+ <UniqueIdentifier>{8566a5d1-d688-41da-bbc3-3d860f2db764}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Data Mgr Header Files">
+ <UniqueIdentifier>{b427db7b-49c3-47b0-982a-7da01cf39c8e}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Data Mgr Source Files">
+ <UniqueIdentifier>{04a46825-a433-4b5c-9c3f-8c489978cb8a}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Handle Mgr Header Files">
+ <UniqueIdentifier>{9e67afe5-3252-4c46-a24f-096e4a35e174}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Handle Mgr Source Files">
+ <UniqueIdentifier>{b8a7e894-ebbe-43de-ad66-3c45d91aac8e}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Object Store Header Files">
+ <UniqueIdentifier>{0c47956d-aa5e-4c26-bee4-63ec89c0ab64}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Object Store Source Files">
+ <UniqueIdentifier>{45c69303-5073-4bde-8b63-2f2e2a688362}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Session Mgr Header Files">
+ <UniqueIdentifier>{d1a8b25d-8ebb-4a79-ae8c-70ef3c0bed5f}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Session Mgr Source Files">
+ <UniqueIdentifier>{cb379241-3d4b-4f7c-b7d1-c6c83d3a1b62}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Slot Mgr Header Files">
+ <UniqueIdentifier>{5420eba7-6b85-4daf-a916-c85421362984}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Slot Mgr Source Files">
+ <UniqueIdentifier>{3c9f55a5-d1a8-4716-a416-ec172a676e63}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Win32 Source Files">
+ <UniqueIdentifier>{63e3d8a2-0853-4f98-bcaa-de05da380d37}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Win32 Header Files">
+ <UniqueIdentifier>{59b2221a-36a3-4f2c-9883-6173599baf5a}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\common\Configuration.h">
+ <Filter>Common Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\common\fatal.h">
+ <Filter>Common Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\common\HandleFactory.h">
+ <Filter>Common Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\common\log.h">
+ <Filter>Common Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\common\MutexFactory.h">
+ <Filter>Common Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\common\osmutex.h">
+ <Filter>Common Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\common\Serialisable.h">
+ <Filter>Common Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\common\SimpleConfigLoader.h">
+ <Filter>Common Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\AESKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\AsymmetricAlgorithm.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\AsymmetricKeyPair.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\AsymmetricParameters.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+@IF BOTAN
+ <ClInclude Include="..\..\src\lib\crypto\BotanAES.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanCryptoFactory.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanDES.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanDH.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanDHKeyPair.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanDHPrivateKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanDHPublicKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanDSA.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanDSAKeyPair.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanDSAPublicKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanECDH.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanECDHKeyPair.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanECDHPrivateKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanECDHPublicKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanECDSA.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanECDSAKeyPair.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanECDSAPrivateKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanECDSAPublicKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanGOST.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanGOSTKeyPair.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanGOSTPrivateKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanGOSTPublicKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanGOSTR3411.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanHashAlgorithm.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanMAC.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanMacAlgorithm.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanMD5.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanRNG.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanDSAPrivateKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanRSA.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanRSAKeyPair.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanRSAPrivateKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanRSAPublicKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanSHA1.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanSHA224.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanSHA256.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanSHA384.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanSHA512.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanSymmetricAlgorithm.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\BotanUtil.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\Botan_ecb.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\Botan_rounding.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+@END BOTAN
+ <ClInclude Include="..\..\src\lib\crypto\CryptoFactory.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\DESKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\DHParameters.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\DHPrivateKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\DHPublicKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\DSAParameters.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\DSAPublicKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\DSAPrivateKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\ECParameters.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\ECPrivateKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\ECPublicKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\GOSTPrivateKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\GOSTPublicKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\HashAlgorithm.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\MacAlgorithm.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\odd.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+@IF OPENSSL
+ <ClInclude Include="..\..\src\lib\crypto\OSSLAES.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLComp.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLCryptoFactory.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDES.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDH.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDHKeyPair.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDHPrivateKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDSAPrivateKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDHPublicKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDSA.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDSAKeyPair.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDSAPublicKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLECDH.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLECDSA.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLECKeyPair.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLECPrivateKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLECPublicKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLEVPHashAlgorithm.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLEVPCMacAlgorithm.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLEVPMacAlgorithm.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLEVPSymmetricAlgorithm.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLGOST.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLGOSTKeyPair.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLGOSTPrivateKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLGOSTPublicKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLGOSTR3411.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLCMAC.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLHMAC.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLMD5.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLRNG.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLRSA.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLRSAKeyPair.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLRSAPrivateKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLRSAPublicKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLSHA1.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLSHA224.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLSHA256.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLSHA384.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLSHA512.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLUtil.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+@END OPENSSL
+ <ClInclude Include="..\..\src\lib\crypto\PrivateKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\PublicKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\RNG.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\RSAParameters.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\RSAPrivateKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\RSAPublicKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\SymmetricAlgorithm.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\SymmetricKey.h">
+ <Filter>Crypto Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\data_mgr\ByteString.h">
+ <Filter>Data Mgr Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\data_mgr\RFC4880.h">
+ <Filter>Data Mgr Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\data_mgr\salloc.h">
+ <Filter>Data Mgr Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\data_mgr\SecureAllocator.h">
+ <Filter>Data Mgr Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\data_mgr\SecureMemoryRegistry.h">
+ <Filter>Data Mgr Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\data_mgr\SecureDataManager.h">
+ <Filter>Data Mgr Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\handle_mgr\Handle.h">
+ <Filter>Handle Mgr Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\handle_mgr\HandleManager.h">
+ <Filter>Handle Mgr Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\Directory.h">
+ <Filter>Object Store Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\File.h">
+ <Filter>Object Store Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\FindOperation.h">
+ <Filter>Object Store Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\Generation.h">
+ <Filter>Object Store Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\ObjectFile.h">
+ <Filter>Object Store Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\ObjectStore.h">
+ <Filter>Object Store Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\ObjectStoreToken.h">
+ <Filter>Object Store Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\OSAttribute.h">
+ <Filter>Object Store Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\OSAttributes.h">
+ <Filter>Object Store Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\OSObject.h">
+ <Filter>Object Store Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\OSPathSep.h">
+ <Filter>Object Store Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\OSToken.h">
+ <Filter>Object Store Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\SessionObject.h">
+ <Filter>Object Store Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\SessionObjectStore.h">
+ <Filter>Object Store Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\UUID.h">
+ <Filter>Object Store Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\session_mgr\Session.h">
+ <Filter>Session Mgr Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\session_mgr\SessionManager.h">
+ <Filter>Session Mgr Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\slot_mgr\Slot.h">
+ <Filter>Slot Mgr Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\slot_mgr\SlotManager.h">
+ <Filter>Slot Mgr Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\slot_mgr\Token.h">
+ <Filter>Slot Mgr Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\win32\syslog.h">
+ <Filter>Win32 Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\common\Configuration.cpp">
+ <Filter>Common Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\common\fatal.cpp">
+ <Filter>Common Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\common\log.cpp">
+ <Filter>Common Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\common\MutexFactory.cpp">
+ <Filter>Common Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\common\osmutex.cpp">
+ <Filter>Common Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\common\SimpleConfigLoader.cpp">
+ <Filter>Common Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\AsymmetricAlgorithm.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\AsymmetricKeyPair.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+@IF BOTAN
+ <ClCompile Include="..\..\src\lib\crypto\BotanAES.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanCryptoFactory.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanDES.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanDH.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanDHKeyPair.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanDHPrivateKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanDHPublicKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanDSA.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanDSAKeyPair.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanDSAPrivateKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanDSAPublicKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanECDH.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanECDHKeyPair.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanECDHPrivateKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanECDHPublicKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanECDSA.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanECDSAKeyPair.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanECDSAPrivateKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanECDSAPublicKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanGOST.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanGOSTKeyPair.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanGOSTPrivateKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanGOSTPublicKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanGOSTR3411.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanHashAlgorithm.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanMAC.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanMacAlgorithm.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanMD5.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanRNG.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanRSA.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanRSAKeyPair.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanRSAPrivateKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanRSAPublicKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanSHA1.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanSHA224.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanSHA256.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanSHA384.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanSHA512.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanSymmetricAlgorithm.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\BotanUtil.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\Botan_ecb.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+@END BOTAN
+ <ClCompile Include="..\..\src\lib\crypto\CryptoFactory.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\DESKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\DHParameters.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\DHPrivateKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\DHPublicKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\DSAParameters.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\DSAPrivateKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\DSAPublicKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\ECParameters.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\ECPrivateKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\ECPublicKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\GOSTPrivateKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\GOSTPublicKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\HashAlgorithm.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\MacAlgorithm.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+@IF OPENSSL
+ <ClCompile Include="..\..\src\lib\crypto\OSSLAES.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLComp.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLCryptoFactory.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDES.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDH.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDHKeyPair.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDHPrivateKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDHPublicKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDSA.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDSAKeyPair.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDSAPrivateKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDSAPublicKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLECDH.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLECDSA.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLECKeyPair.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLECPrivateKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLECPublicKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLEVPHashAlgorithm.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLEVPCMacAlgorithm.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLEVPMacAlgorithm.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLEVPSymmetricAlgorithm.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLGOST.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLGOSTKeyPair.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLGOSTPrivateKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLGOSTPublicKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLGOSTR3411.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLCMAC.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLHMAC.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLMD5.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLRNG.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLRSA.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLRSAKeyPair.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLRSAPrivateKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLRSAPublicKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLSHA1.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLSHA224.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLSHA256.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLSHA384.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLSHA512.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLUtil.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+@END OPENSSL
+ <ClCompile Include="..\..\src\lib\crypto\RSAParameters.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\RSAPrivateKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\RSAPublicKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\SymmetricAlgorithm.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\SymmetricKey.cpp">
+ <Filter>Crypto Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\data_mgr\ByteString.cpp">
+ <Filter>Data Mgr Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\data_mgr\RFC4880.cpp">
+ <Filter>Data Mgr Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\data_mgr\salloc.cpp">
+ <Filter>Data Mgr Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\data_mgr\SecureDataManager.cpp">
+ <Filter>Data Mgr Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\data_mgr\SecureMemoryRegistry.cpp">
+ <Filter>Data Mgr Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\handle_mgr\Handle.cpp">
+ <Filter>Handle Mgr Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\handle_mgr\HandleManager.cpp">
+ <Filter>Handle Mgr Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\Directory.cpp">
+ <Filter>Object Store Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\File.cpp">
+ <Filter>Object Store Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\FindOperation.cpp">
+ <Filter>Object Store Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\Generation.cpp">
+ <Filter>Object Store Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\ObjectFile.cpp">
+ <Filter>Object Store Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\ObjectStore.cpp">
+ <Filter>Object Store Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\ObjectStoreToken.cpp">
+ <Filter>Object Store Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\OSAttribute.cpp">
+ <Filter>Object Store Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\OSToken.cpp">
+ <Filter>Object Store Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\SessionObject.cpp">
+ <Filter>Object Store Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\SessionObjectStore.cpp">
+ <Filter>Object Store Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\UUID.cpp">
+ <Filter>Object Store Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\session_mgr\Session.cpp">
+ <Filter>Session Mgr Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\session_mgr\SessionManager.cpp">
+ <Filter>Session Mgr Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\slot_mgr\Slot.cpp">
+ <Filter>Slot Mgr Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\slot_mgr\SlotManager.cpp">
+ <Filter>Slot Mgr Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\slot_mgr\Token.cpp">
+ <Filter>Slot Mgr Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\win32\syslog.cpp">
+ <Filter>Win32 Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
diff --git a/SoftHSMv2/win32/convarch/convarch.vcxproj.in b/SoftHSMv2/win32/convarch/convarch.vcxproj.in
new file mode 100644
index 0000000..b711f35
--- /dev/null
+++ b/SoftHSMv2/win32/convarch/convarch.vcxproj.in
@@ -0,0 +1,374 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|@PLATFORM@">
+ <Configuration>Debug</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|@PLATFORM@">
+ <Configuration>Release</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\common\Configuration.h" />
+ <ClInclude Include="..\..\src\lib\common\fatal.h" />
+ <ClInclude Include="..\..\src\lib\common\HandleFactory.h" />
+ <ClInclude Include="..\..\src\lib\common\log.h" />
+ <ClInclude Include="..\..\src\lib\common\MutexFactory.h" />
+ <ClInclude Include="..\..\src\lib\common\osmutex.h" />
+ <ClInclude Include="..\..\src\lib\common\Serialisable.h" />
+ <ClInclude Include="..\..\src\lib\common\SimpleConfigLoader.h" />
+ <ClInclude Include="..\..\src\lib\crypto\AESKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\AsymmetricAlgorithm.h" />
+ <ClInclude Include="..\..\src\lib\crypto\AsymmetricKeyPair.h" />
+ <ClInclude Include="..\..\src\lib\crypto\AsymmetricParameters.h" />
+@IF BOTAN
+ <ClInclude Include="..\..\src\lib\crypto\BotanAES.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanCryptoFactory.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanDES.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanDH.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanDHKeyPair.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanDHPrivateKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanDHPublicKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanDSA.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanDSAKeyPair.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanDSAPrivateKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanDSAPublicKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanECDH.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanECDHKeyPair.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanECDHPrivateKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanECDHPublicKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanECDSA.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanECDSAKeyPair.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanECDSAPrivateKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanECDSAPublicKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanGOST.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanGOSTKeyPair.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanGOSTPrivateKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanGOSTPublicKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanGOSTR3411.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanHashAlgorithm.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanMAC.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanMacAlgorithm.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanMD5.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanRNG.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanRSA.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanRSAKeyPair.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanRSAPrivateKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanRSAPublicKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanSHA1.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanSHA224.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanSHA256.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanSHA384.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanSHA512.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanSymmetricAlgorithm.h" />
+ <ClInclude Include="..\..\src\lib\crypto\BotanUtil.h" />
+ <ClInclude Include="..\..\src\lib\crypto\Botan_ecb.h" />
+ <ClInclude Include="..\..\src\lib\crypto\Botan_rounding.h" />
+@END BOTAN
+ <ClInclude Include="..\..\src\lib\crypto\CryptoFactory.h" />
+ <ClInclude Include="..\..\src\lib\crypto\DESKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\DHParameters.h" />
+ <ClInclude Include="..\..\src\lib\crypto\DHPrivateKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\DHPublicKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\DSAParameters.h" />
+ <ClInclude Include="..\..\src\lib\crypto\DSAPrivateKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\DSAPublicKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\ECParameters.h" />
+ <ClInclude Include="..\..\src\lib\crypto\ECPrivateKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\ECPublicKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\GOSTPrivateKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\GOSTPublicKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\HashAlgorithm.h" />
+ <ClInclude Include="..\..\src\lib\crypto\MacAlgorithm.h" />
+ <ClInclude Include="..\..\src\lib\crypto\odd.h" />
+@IF OPENSSL
+ <ClInclude Include="..\..\src\lib\crypto\OSSLAES.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLComp.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLCryptoFactory.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDES.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDH.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDHKeyPair.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDHPrivateKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDHPublicKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDSA.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDSAKeyPair.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDSAPrivateKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLDSAPublicKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLECDH.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLECDSA.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLECKeyPair.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLECPrivateKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLECPublicKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLEVPHashAlgorithm.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLEVPCMacAlgorithm.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLEVPMacAlgorithm.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLEVPSymmetricAlgorithm.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLGOST.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLGOSTKeyPair.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLGOSTPrivateKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLGOSTPublicKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLGOSTR3411.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLCMAC.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLHMAC.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLMD5.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLRNG.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLRSA.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLRSAKeyPair.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLRSAPrivateKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLRSAPublicKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLSHA1.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLSHA224.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLSHA256.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLSHA384.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLSHA512.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLUtil.h" />
+@END OPENSSL
+ <ClInclude Include="..\..\src\lib\crypto\PrivateKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\PublicKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\RNG.h" />
+ <ClInclude Include="..\..\src\lib\crypto\RSAParameters.h" />
+ <ClInclude Include="..\..\src\lib\crypto\RSAPrivateKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\RSAPublicKey.h" />
+ <ClInclude Include="..\..\src\lib\crypto\SymmetricAlgorithm.h" />
+ <ClInclude Include="..\..\src\lib\crypto\SymmetricKey.h" />
+ <ClInclude Include="..\..\src\lib\data_mgr\ByteString.h" />
+ <ClInclude Include="..\..\src\lib\data_mgr\RFC4880.h" />
+ <ClInclude Include="..\..\src\lib\data_mgr\salloc.h" />
+ <ClInclude Include="..\..\src\lib\data_mgr\SecureAllocator.h" />
+ <ClInclude Include="..\..\src\lib\data_mgr\SecureDataManager.h" />
+ <ClInclude Include="..\..\src\lib\data_mgr\SecureMemoryRegistry.h" />
+ <ClInclude Include="..\..\src\lib\handle_mgr\Handle.h" />
+ <ClInclude Include="..\..\src\lib\handle_mgr\HandleManager.h" />
+ <ClInclude Include="..\..\src\lib\object_store\Directory.h" />
+ <ClInclude Include="..\..\src\lib\object_store\File.h" />
+ <ClInclude Include="..\..\src\lib\object_store\FindOperation.h" />
+ <ClInclude Include="..\..\src\lib\object_store\Generation.h" />
+ <ClInclude Include="..\..\src\lib\object_store\ObjectFile.h" />
+ <ClInclude Include="..\..\src\lib\object_store\ObjectStore.h" />
+ <ClInclude Include="..\..\src\lib\object_store\ObjectStoreToken.h" />
+ <ClInclude Include="..\..\src\lib\object_store\OSAttribute.h" />
+ <ClInclude Include="..\..\src\lib\object_store\OSAttributes.h" />
+ <ClInclude Include="..\..\src\lib\object_store\OSObject.h" />
+ <ClInclude Include="..\..\src\lib\object_store\OSPathSep.h" />
+ <ClInclude Include="..\..\src\lib\object_store\OSToken.h" />
+ <ClInclude Include="..\..\src\lib\object_store\SessionObject.h" />
+ <ClInclude Include="..\..\src\lib\object_store\SessionObjectStore.h" />
+ <ClInclude Include="..\..\src\lib\object_store\UUID.h" />
+ <ClInclude Include="..\..\src\lib\session_mgr\Session.h" />
+ <ClInclude Include="..\..\src\lib\session_mgr\SessionManager.h" />
+ <ClInclude Include="..\..\src\lib\slot_mgr\Slot.h" />
+ <ClInclude Include="..\..\src\lib\slot_mgr\SlotManager.h" />
+ <ClInclude Include="..\..\src\lib\slot_mgr\Token.h" />
+ <ClInclude Include="..\..\src\lib\win32\syslog.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\common\Configuration.cpp" />
+ <ClCompile Include="..\..\src\lib\common\fatal.cpp" />
+ <ClCompile Include="..\..\src\lib\common\log.cpp" />
+ <ClCompile Include="..\..\src\lib\common\MutexFactory.cpp" />
+ <ClCompile Include="..\..\src\lib\common\osmutex.cpp" />
+ <ClCompile Include="..\..\src\lib\common\SimpleConfigLoader.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\AESKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\AsymmetricAlgorithm.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\AsymmetricKeyPair.cpp" />
+@IF BOTAN
+ <ClCompile Include="..\..\src\lib\crypto\BotanAES.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanCryptoFactory.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanDES.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanDH.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanDHKeyPair.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanDHPrivateKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanDHPublicKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanDSA.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanDSAKeyPair.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanDSAPrivateKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanDSAPublicKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanECDH.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanECDHKeyPair.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanECDHPrivateKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanECDHPublicKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanECDSA.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanECDSAKeyPair.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanECDSAPrivateKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanECDSAPublicKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanGOST.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanGOSTKeyPair.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanGOSTPrivateKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanGOSTPublicKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanGOSTR3411.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanHashAlgorithm.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanMAC.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanMacAlgorithm.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanMD5.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanRNG.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanRSA.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanRSAKeyPair.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanRSAPrivateKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanRSAPublicKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanSHA1.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanSHA224.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanSHA256.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanSHA384.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanSHA512.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanSymmetricAlgorithm.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\BotanUtil.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\Botan_ecb.cpp" />
+@END BOTAN
+ <ClCompile Include="..\..\src\lib\crypto\CryptoFactory.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\DESKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\DHParameters.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\DHPrivateKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\DHPublicKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\DSAParameters.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\DSAPrivateKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\DSAPublicKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\ECParameters.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\ECPrivateKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\ECPublicKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\GOSTPrivateKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\GOSTPublicKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\HashAlgorithm.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\MacAlgorithm.cpp" />
+@IF OPENSSL
+ <ClCompile Include="..\..\src\lib\crypto\OSSLAES.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLComp.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLCryptoFactory.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDES.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDH.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDHKeyPair.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDHPrivateKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDHPublicKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDSA.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDSAKeyPair.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDSAPrivateKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLDSAPublicKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLECDH.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLECDSA.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLECKeyPair.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLECPrivateKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLECPublicKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLEVPHashAlgorithm.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLEVPCMacAlgorithm.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLEVPMacAlgorithm.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLEVPSymmetricAlgorithm.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLGOST.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLGOSTKeyPair.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLGOSTPrivateKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLGOSTPublicKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLGOSTR3411.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLCMAC.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLHMAC.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLMD5.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLRNG.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLRSA.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLRSAKeyPair.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLRSAPrivateKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLRSAPublicKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLSHA1.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLSHA224.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLSHA256.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLSHA384.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLSHA512.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLUtil.cpp" />
+@END OPENSSL
+ <ClCompile Include="..\..\src\lib\crypto\RSAParameters.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\RSAPrivateKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\RSAPublicKey.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\SymmetricAlgorithm.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\SymmetricKey.cpp" />
+ <ClCompile Include="..\..\src\lib\data_mgr\ByteString.cpp" />
+ <ClCompile Include="..\..\src\lib\data_mgr\RFC4880.cpp" />
+ <ClCompile Include="..\..\src\lib\data_mgr\salloc.cpp" />
+ <ClCompile Include="..\..\src\lib\data_mgr\SecureDataManager.cpp" />
+ <ClCompile Include="..\..\src\lib\data_mgr\SecureMemoryRegistry.cpp" />
+ <ClCompile Include="..\..\src\lib\handle_mgr\Handle.cpp" />
+ <ClCompile Include="..\..\src\lib\handle_mgr\HandleManager.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\Directory.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\File.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\FindOperation.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\Generation.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\ObjectFile.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\ObjectStore.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\ObjectStoreToken.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\OSAttribute.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\OSToken.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\SessionObject.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\SessionObjectStore.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\UUID.cpp" />
+ <ClCompile Include="..\..\src\lib\session_mgr\Session.cpp" />
+ <ClCompile Include="..\..\src\lib\session_mgr\SessionManager.cpp" />
+ <ClCompile Include="..\..\src\lib\slot_mgr\Slot.cpp" />
+ <ClCompile Include="..\..\src\lib\slot_mgr\SlotManager.cpp" />
+ <ClCompile Include="..\..\src\lib\slot_mgr\Token.cpp" />
+ <ClCompile Include="..\..\src\lib\win32\syslog.cpp" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{F64541B6-FFBF-4368-B93A-A5CA8ADAD795}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>convarch</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup />
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <ClCompile>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\pkcs11;..\..\src\lib\common;..\..\src\lib\object_store;..\..\src\lib\slot_mgr;..\..\src\lib\session_mgr;..\..\src\lib\handle_mgr;..\..\src\lib\crypto;..\..\src\lib\win32;..\..\src\lib\data_mgr;@DEBUGINCPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\pkcs11;..\..\src\lib\common;..\..\src\lib\object_store;..\..\src\lib\slot_mgr;..\..\src\lib\session_mgr;..\..\src\lib\handle_mgr;..\..\src\lib\crypto;..\..\src\lib\win32;..\..\src\lib\data_mgr;@INCLUDEPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
diff --git a/SoftHSMv2/win32/convarch/convarch.vcxproj.user b/SoftHSMv2/win32/convarch/convarch.vcxproj.user
new file mode 100644
index 0000000..695b5c7
--- /dev/null
+++ b/SoftHSMv2/win32/convarch/convarch.vcxproj.user
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+</Project> \ No newline at end of file
diff --git a/SoftHSMv2/win32/cryptotest/cryptotest.vcxproj.filters b/SoftHSMv2/win32/cryptotest/cryptotest.vcxproj.filters
new file mode 100644
index 0000000..9aee71d
--- /dev/null
+++ b/SoftHSMv2/win32/cryptotest/cryptotest.vcxproj.filters
@@ -0,0 +1,123 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\crypto\test\DHTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\test\DSATests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\test\ECDHTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\test\ECDSATests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\test\ent.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\test\GOSTTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\test\iso8859.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\test\randtest.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\test\RNGTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\test\RSATests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\test\AESTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\test\DESTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\test\HashTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\test\MacTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\crypto\test\chisq.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\test\cryptotest.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\test\DHTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\test\DSATests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\test\ECDHTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\test\ECDSATests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\test\ent.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\test\GOSTTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\test\iso8859.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\test\randtest.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\test\RNGTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\test\RSATests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\test\AESTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\test\DESTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\test\HashTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\test\MacTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
diff --git a/SoftHSMv2/win32/cryptotest/cryptotest.vcxproj.in b/SoftHSMv2/win32/cryptotest/cryptotest.vcxproj.in
new file mode 100644
index 0000000..010b890
--- /dev/null
+++ b/SoftHSMv2/win32/cryptotest/cryptotest.vcxproj.in
@@ -0,0 +1,127 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|@PLATFORM@">
+ <Configuration>Debug</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|@PLATFORM@">
+ <Configuration>Release</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{07E03E0B-C525-4A72-88C6-2238896A4D8C}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>cryptotest</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <ClCompile>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\crypto;..\..\src\lib\common;..\..\src\lib\pkcs11;..\..\src\lib\data_mgr;..\..\src\lib\object_store;..\..\src\lib\session_mgr;..\..\src\lib\slot_mgr;..\..\src\lib\win32;@CUINCPATH@;@DEBUGINCPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@CULIBPATH@;@DEBUGLIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;cppunitd.lib;@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\crypto;..\..\src\lib\common;..\..\src\lib\pkcs11;..\..\src\lib\data_mgr;..\..\src\lib\object_store;..\..\src\lib\session_mgr;..\..\src\lib\slot_mgr;..\..\src\lib\win32;@CUINCPATH@;@INCLUDEPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@CULIBPATH@;@LIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;cppunit.lib;@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h" />
+ <ClInclude Include="..\..\src\lib\crypto\test\AESTests.h" />
+ <ClInclude Include="..\..\src\lib\crypto\test\DESTests.h" />
+ <ClInclude Include="..\..\src\lib\crypto\test\DHTests.h" />
+ <ClInclude Include="..\..\src\lib\crypto\test\DSATests.h" />
+ <ClInclude Include="..\..\src\lib\crypto\test\ECDHTests.h" />
+ <ClInclude Include="..\..\src\lib\crypto\test\ECDSATests.h" />
+ <ClInclude Include="..\..\src\lib\crypto\test\ent.h" />
+ <ClInclude Include="..\..\src\lib\crypto\test\GOSTTests.h" />
+ <ClInclude Include="..\..\src\lib\crypto\test\HashTests.h" />
+ <ClInclude Include="..\..\src\lib\crypto\test\iso8859.h" />
+ <ClInclude Include="..\..\src\lib\crypto\test\MacTests.h" />
+ <ClInclude Include="..\..\src\lib\crypto\test\randtest.h" />
+ <ClInclude Include="..\..\src\lib\crypto\test\RNGTests.h" />
+ <ClInclude Include="..\..\src\lib\crypto\test\RSATests.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\crypto\test\AESTests.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\test\chisq.c" />
+ <ClCompile Include="..\..\src\lib\crypto\test\cryptotest.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\test\DESTests.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\test\DHTests.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\test\DSATests.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\test\ECDHTests.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\test\ECDSATests.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\test\ent.c" />
+ <ClCompile Include="..\..\src\lib\crypto\test\GOSTTests.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\test\HashTests.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\test\iso8859.c" />
+ <ClCompile Include="..\..\src\lib\crypto\test\MacTests.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\test\randtest.c" />
+ <ClCompile Include="..\..\src\lib\crypto\test\RNGTests.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\test\RSATests.cpp" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
diff --git a/SoftHSMv2/win32/cryptotest/cryptotest.vcxproj.user b/SoftHSMv2/win32/cryptotest/cryptotest.vcxproj.user
new file mode 100644
index 0000000..695b5c7
--- /dev/null
+++ b/SoftHSMv2/win32/cryptotest/cryptotest.vcxproj.user
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+</Project> \ No newline at end of file
diff --git a/SoftHSMv2/win32/datamgrtest/datamgrtest.vcxproj.filters b/SoftHSMv2/win32/datamgrtest/datamgrtest.vcxproj.filters
new file mode 100644
index 0000000..645ba69
--- /dev/null
+++ b/SoftHSMv2/win32/datamgrtest/datamgrtest.vcxproj.filters
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\data_mgr\test\ByteStringTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\data_mgr\test\RFC4880Tests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\data_mgr\test\SecureDataMgrTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\data_mgr\test\ByteStringTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\data_mgr\test\datamgrtest.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\data_mgr\test\RFC4880Tests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\data_mgr\test\SecureDataMgrTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
diff --git a/SoftHSMv2/win32/datamgrtest/datamgrtest.vcxproj.in b/SoftHSMv2/win32/datamgrtest/datamgrtest.vcxproj.in
new file mode 100644
index 0000000..0251af3
--- /dev/null
+++ b/SoftHSMv2/win32/datamgrtest/datamgrtest.vcxproj.in
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|@PLATFORM@">
+ <Configuration>Debug</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|@PLATFORM@">
+ <Configuration>Release</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{E20315B5-B49E-46D7-B7EC-1A439F347C95}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>datamgrtest</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <ClCompile>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\data_mgr;..\..\src\lib\common;..\..\src\lib\pkcs11;..\..\src\lib\crypto;..\..\src\lib\object_store;..\..\src\lib\session_mgr;..\..\src\lib\slot_mgr;..\..\src\lib\win32;@CUINCPATH@;@INCLUDEPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@CULIBPATH@;@DEBUGLIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;cppunitd.lib;@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\data_mgr;..\..\src\lib\common;..\..\src\lib\pkcs11;..\..\src\lib\crypto;..\..\src\lib\object_store;..\..\src\lib\session_mgr;..\..\src\lib\slot_mgr;..\..\src\lib\win32;@CUINCPATH@;@INCLUDEPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@CULIBPATH@;@LIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;cppunit.lib;@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h" />
+ <ClInclude Include="..\..\src\lib\data_mgr\test\ByteStringTests.h" />
+ <ClInclude Include="..\..\src\lib\data_mgr\test\RFC4880Tests.h" />
+ <ClInclude Include="..\..\src\lib\data_mgr\test\SecureDataMgrTests.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\data_mgr\test\ByteStringTests.cpp" />
+ <ClCompile Include="..\..\src\lib\data_mgr\test\datamgrtest.cpp" />
+ <ClCompile Include="..\..\src\lib\data_mgr\test\RFC4880Tests.cpp" />
+ <ClCompile Include="..\..\src\lib\data_mgr\test\SecureDataMgrTests.cpp" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
diff --git a/SoftHSMv2/win32/datamgrtest/datamgrtest.vcxproj.user b/SoftHSMv2/win32/datamgrtest/datamgrtest.vcxproj.user
new file mode 100644
index 0000000..695b5c7
--- /dev/null
+++ b/SoftHSMv2/win32/datamgrtest/datamgrtest.vcxproj.user
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+</Project> \ No newline at end of file
diff --git a/SoftHSMv2/win32/dump/dump.vcxproj.filters b/SoftHSMv2/win32/dump/dump.vcxproj.filters
new file mode 100644
index 0000000..c4546a6
--- /dev/null
+++ b/SoftHSMv2/win32/dump/dump.vcxproj.filters
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\bin\dump\common.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\bin\dump\tables.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\config.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\bin\dump\softhsm2-dump-file.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
diff --git a/SoftHSMv2/win32/dump/dump.vcxproj.in b/SoftHSMv2/win32/dump/dump.vcxproj.in
new file mode 100644
index 0000000..2521562
--- /dev/null
+++ b/SoftHSMv2/win32/dump/dump.vcxproj.in
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|@PLATFORM@">
+ <Configuration>Debug</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|@PLATFORM@">
+ <Configuration>Release</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{F60ACB12-7D05-4A89-B2D1-DD16E1F3566B}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>dump</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <LinkIncremental>true</LinkIncremental>
+ <TargetName>softhsm2-dump-file</TargetName>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <LinkIncremental>false</LinkIncremental>
+ <TargetName>softhsm2-dump-file</TargetName>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <ClCompile>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib\pkcs11;..\..\src\lib\object_store;..\..\src\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib\pkcs11;..\..\src\lib\object_store;..\..\src\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\bin\dump\common.h" />
+ <ClInclude Include="..\..\src\bin\dump\tables.h" />
+ <ClInclude Include="..\config.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\bin\dump\softhsm2-dump-file.cpp" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
diff --git a/SoftHSMv2/win32/dump/dump.vcxproj.user b/SoftHSMv2/win32/dump/dump.vcxproj.user
new file mode 100644
index 0000000..695b5c7
--- /dev/null
+++ b/SoftHSMv2/win32/dump/dump.vcxproj.user
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+</Project> \ No newline at end of file
diff --git a/SoftHSMv2/win32/handlemgrtest/handlemgrtest.vcxproj.filters b/SoftHSMv2/win32/handlemgrtest/handlemgrtest.vcxproj.filters
new file mode 100644
index 0000000..38ddc83
--- /dev/null
+++ b/SoftHSMv2/win32/handlemgrtest/handlemgrtest.vcxproj.filters
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\handle_mgr\test\HandleManagerTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\handle_mgr\test\HandleManagerTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\handle_mgr\test\handlemgrtest.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
diff --git a/SoftHSMv2/win32/handlemgrtest/handlemgrtest.vcxproj.in b/SoftHSMv2/win32/handlemgrtest/handlemgrtest.vcxproj.in
new file mode 100644
index 0000000..ddc9add
--- /dev/null
+++ b/SoftHSMv2/win32/handlemgrtest/handlemgrtest.vcxproj.in
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|@PLATFORM@">
+ <Configuration>Debug</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|@PLATFORM@">
+ <Configuration>Release</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{014B1E10-EC68-4BEC-B992-F92CA2B6816F}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>handlemgrtest</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <ClCompile>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\handle_mgr;..\..\src\lib\common;..\..\src\lib\pkcs11;..\..\src\lib\crypto;..\..\src\lib\object_store;..\..\src\lib\session_mgr;..\..\src\lib\slot_mgr;..\..\src\lib\data_mgr;..\..\src\lib\win32;@CUINCPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@CULIBPATH@;@DEBUGLIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;cppunitd.lib;@LIBNAME@;%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\handle_mgr;..\..\src\lib\common;..\..\src\lib\pkcs11;..\..\src\lib\crypto;..\..\src\lib\object_store;..\..\src\lib\session_mgr;..\..\src\lib\slot_mgr;..\..\src\lib\data_mgr;..\..\src\lib\win32;@CUINCPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@CULIBPATH@;@LIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;cppunit.lib;@LIBNAME@;%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h" />
+ <ClInclude Include="..\..\src\lib\handle_mgr\test\HandleManagerTests.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\handle_mgr\test\HandleManagerTests.cpp" />
+ <ClCompile Include="..\..\src\lib\handle_mgr\test\handlemgrtest.cpp" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
diff --git a/SoftHSMv2/win32/handlemgrtest/handlemgrtest.vcxproj.user b/SoftHSMv2/win32/handlemgrtest/handlemgrtest.vcxproj.user
new file mode 100644
index 0000000..695b5c7
--- /dev/null
+++ b/SoftHSMv2/win32/handlemgrtest/handlemgrtest.vcxproj.user
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+</Project> \ No newline at end of file
diff --git a/SoftHSMv2/win32/keyconv/keyconv.vcxproj.filters.in b/SoftHSMv2/win32/keyconv/keyconv.vcxproj.filters.in
new file mode 100644
index 0000000..bd6ce41
--- /dev/null
+++ b/SoftHSMv2/win32/keyconv/keyconv.vcxproj.filters.in
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Common Header Files">
+ <UniqueIdentifier>{6f8944db-01c2-47c3-a4b4-265d91e99ba0}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Common Source Files">
+ <UniqueIdentifier>{b6a2e68c-2518-456b-8592-561c011e0390}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Win32 Source Files">
+ <UniqueIdentifier>{14914ba7-3ec3-4f58-a83a-4596a7f52075}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Win32 Header Files">
+ <UniqueIdentifier>{3253c2c0-ca7a-4902-8b31-87ab6c4c754f}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\bin\common\getpw.h">
+ <Filter>Common Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\bin\common\library.h">
+ <Filter>Common Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\bin\keyconv\softhsm2-keyconv.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+@IF OPENSSL
+ <ClInclude Include="..\..\src\lib\crypto\OSSLComp.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+@END OPENSSL
+ <ClInclude Include="..\config.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\bin\win32\getopt.h">
+ <Filter>Win32 Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\bin\keyconv\softhsm2-keyconv.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+@IF BOTAN
+ <ClCompile Include="..\..\src\bin\keyconv\softhsm2-keyconv-botan.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+@END BOTAN
+@IF OPENSSL
+ <ClCompile Include="..\..\src\bin\keyconv\softhsm2-keyconv-ossl.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLComp.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+@END OPENSSL
+ <ClCompile Include="..\..\src\bin\common\getpw.cpp">
+ <Filter>Common Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\bin\common\library.cpp">
+ <Filter>Common Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\bin\keyconv\base64.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\bin\win32\getopt.cpp">
+ <Filter>Win32 Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\bin\win32\getpassphase.cpp">
+ <Filter>Win32 Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
diff --git a/SoftHSMv2/win32/keyconv/keyconv.vcxproj.in b/SoftHSMv2/win32/keyconv/keyconv.vcxproj.in
new file mode 100644
index 0000000..87c1b5e
--- /dev/null
+++ b/SoftHSMv2/win32/keyconv/keyconv.vcxproj.in
@@ -0,0 +1,116 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|@PLATFORM@">
+ <Configuration>Debug</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|@PLATFORM@">
+ <Configuration>Release</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{9B003E52-F02A-47EA-9942-2D9AE8738161}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>keyconv</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <LinkIncremental>true</LinkIncremental>
+ <TargetName>softhsm2-keyconv</TargetName>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <LinkIncremental>false</LinkIncremental>
+ <TargetName>softhsm2-keyconv</TargetName>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <ClCompile>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\bin\common;..\..\src\bin\win32;..\..\src\lib\pkcs11;..\..\src\lib\crypto;@DEBUGINCPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <AdditionalLibraryDirectories>@DEBUGLIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\bin\common;..\..\src\bin\win32;..\..\src\lib\pkcs11;..\..\src\lib\crypto;@INCLUDEPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <AdditionalLibraryDirectories>@LIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\bin\common\getpw.h" />
+ <ClInclude Include="..\..\src\bin\common\library.h" />
+ <ClInclude Include="..\..\src\bin\keyconv\softhsm2-keyconv.h" />
+@IF OPENSSL
+ <ClInclude Include="..\..\src\lib\crypto\OSSLComp.h" />
+@END OPENSSL
+ <ClInclude Include="..\..\src\bin\win32\getopt.h" />
+ <ClInclude Include="..\config.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\bin\common\getpw.cpp" />
+ <ClCompile Include="..\..\src\bin\common\library.cpp" />
+ <ClCompile Include="..\..\src\bin\keyconv\base64.c" />
+@IF BOTAN
+ <ClCompile Include="..\..\src\bin\keyconv\softhsm2-keyconv-botan.cpp" />
+@END BOTAN
+@IF OPENSSL
+ <ClCompile Include="..\..\src\bin\keyconv\softhsm2-keyconv-ossl.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLComp.cpp" />
+@END OPENSSL
+ <ClCompile Include="..\..\src\bin\keyconv\softhsm2-keyconv.cpp" />
+ <ClCompile Include="..\..\src\bin\win32\getopt.cpp" />
+ <ClCompile Include="..\..\src\bin\win32\getpassphase.cpp" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
diff --git a/SoftHSMv2/win32/keyconv/keyconv.vcxproj.user b/SoftHSMv2/win32/keyconv/keyconv.vcxproj.user
new file mode 100644
index 0000000..695b5c7
--- /dev/null
+++ b/SoftHSMv2/win32/keyconv/keyconv.vcxproj.user
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+</Project> \ No newline at end of file
diff --git a/SoftHSMv2/win32/objstoretest/objstoretest.vcxproj.filters b/SoftHSMv2/win32/objstoretest/objstoretest.vcxproj.filters
new file mode 100644
index 0000000..11d8d84
--- /dev/null
+++ b/SoftHSMv2/win32/objstoretest/objstoretest.vcxproj.filters
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\test\DirectoryTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\test\FileTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\test\ObjectFileTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\test\ObjectStoreTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\test\OSTokenTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\test\SessionObjectStoreTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\test\SessionObjectTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\object_store\test\UUIDTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\object_store\test\DirectoryTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\test\FileTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\test\ObjectFileTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\test\ObjectStoreTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\test\OSTokenTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\test\objstoretest.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\test\SessionObjectStoreTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\test\SessionObjectTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\object_store\test\UUIDTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
diff --git a/SoftHSMv2/win32/objstoretest/objstoretest.vcxproj.in b/SoftHSMv2/win32/objstoretest/objstoretest.vcxproj.in
new file mode 100644
index 0000000..d26e7cb
--- /dev/null
+++ b/SoftHSMv2/win32/objstoretest/objstoretest.vcxproj.in
@@ -0,0 +1,114 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|@PLATFORM@">
+ <Configuration>Debug</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|@PLATFORM@">
+ <Configuration>Release</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{44F77533-A4A1-4175-8C4C-07106B3F9C08}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>objstoretest</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <ClCompile>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\object_store;..\..\src\lib\common;..\..\src\lib\pkcs11;..\..\src\lib\crypto;..\..\src\lib\data_mgr;..\..\src\lib\session_mgr;..\..\src\lib\slot_mgr;..\..\src\lib\win32;@CUINCPATH@;@INCLUDEPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@CULIBPATH@;@DEBUGLIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;cppunitd.lib;@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\object_store;..\..\src\lib\common;..\..\src\lib\pkcs11;..\..\src\lib\crypto;..\..\src\lib\data_mgr;..\..\src\lib\session_mgr;..\..\src\lib\slot_mgr;..\..\src\lib\win32;@CUINCPATH@;@INCLUDEPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@CULIBPATH@;@LIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;cppunit.lib;@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h" />
+ <ClInclude Include="..\..\src\lib\object_store\test\DirectoryTests.h" />
+ <ClInclude Include="..\..\src\lib\object_store\test\FileTests.h" />
+ <ClInclude Include="..\..\src\lib\object_store\test\ObjectFileTests.h" />
+ <ClInclude Include="..\..\src\lib\object_store\test\ObjectStoreTests.h" />
+ <ClInclude Include="..\..\src\lib\object_store\test\OSTokenTests.h" />
+ <ClInclude Include="..\..\src\lib\object_store\test\SessionObjectStoreTests.h" />
+ <ClInclude Include="..\..\src\lib\object_store\test\SessionObjectTests.h" />
+ <ClInclude Include="..\..\src\lib\object_store\test\UUIDTests.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\object_store\test\DirectoryTests.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\test\FileTests.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\test\ObjectFileTests.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\test\ObjectStoreTests.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\test\objstoretest.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\test\OSTokenTests.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\test\SessionObjectStoreTests.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\test\SessionObjectTests.cpp" />
+ <ClCompile Include="..\..\src\lib\object_store\test\UUIDTests.cpp" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
diff --git a/SoftHSMv2/win32/objstoretest/objstoretest.vcxproj.user b/SoftHSMv2/win32/objstoretest/objstoretest.vcxproj.user
new file mode 100644
index 0000000..695b5c7
--- /dev/null
+++ b/SoftHSMv2/win32/objstoretest/objstoretest.vcxproj.user
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+</Project> \ No newline at end of file
diff --git a/SoftHSMv2/win32/p11test/p11test.vcxproj.filters b/SoftHSMv2/win32/p11test/p11test.vcxproj.filters
new file mode 100644
index 0000000..fa7e86f
--- /dev/null
+++ b/SoftHSMv2/win32/p11test/p11test.vcxproj.filters
@@ -0,0 +1,181 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ <Filter Include="Lib Header Files">
+ <UniqueIdentifier>{8440d7eb-5530-4f5e-a355-a43435742c60}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Lib Source Files">
+ <UniqueIdentifier>{3c33d54e-4bd1-43e0-bcc7-0d6adcfd5dc7}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Other Header Files">
+ <UniqueIdentifier>{ff435d2e-c67a-4f47-9731-28d88617e559}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Other Source Files">
+ <UniqueIdentifier>{5df8b0a3-ecc7-4876-aea2-8421c0846535}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\test\AsymEncryptDecryptTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\test\AsymWrapUnwrapTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\test\DeriveTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\test\DigestTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\test\InfoTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\test\InitTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\test\ObjectTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\test\RandomTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\test\SessionTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\test\SignVerifyTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\test\SymmetricAlgorithmTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\test\TestsBase.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\test\TestsNoPINInitBase.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\test\TokenTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\test\UserTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\common\osmutex.h">
+ <Filter>Other Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\win32\setenv.h">
+ <Filter>Other Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\access.h">
+ <Filter>Lib Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h">
+ <Filter>Lib Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h">
+ <Filter>Other Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h">
+ <Filter>Other Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h">
+ <Filter>Other Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\P11Attributes.h">
+ <Filter>Lib Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\P11Objects.h">
+ <Filter>Lib Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\SoftHSM.h">
+ <Filter>Lib Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\test\AsymEncryptDecryptTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\test\AsymWrapUnwrapTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\test\DeriveTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\test\DigestTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\test\InfoTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\test\InitTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\test\ObjectTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\test\RandomTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\test\SessionTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\test\SignVerifyTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\test\SymmetricAlgorithmTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\test\TestsBase.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\test\TestsNoPINInitBase.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\test\TokenTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\test\UserTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\common\osmutex.cpp">
+ <Filter>Other Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\win32\setenv.cpp">
+ <Filter>Other Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\access.cpp">
+ <Filter>Lib Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\main.cpp">
+ <Filter>Lib Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\P11Attributes.cpp">
+ <Filter>Lib Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\P11Objects.cpp">
+ <Filter>Lib Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\SoftHSM.cpp">
+ <Filter>Lib Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\test\p11test.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
diff --git a/SoftHSMv2/win32/p11test/p11test.vcxproj.in b/SoftHSMv2/win32/p11test/p11test.vcxproj.in
new file mode 100644
index 0000000..c8a493c
--- /dev/null
+++ b/SoftHSMv2/win32/p11test/p11test.vcxproj.in
@@ -0,0 +1,159 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|@PLATFORM@">
+ <Configuration>Debug</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|@PLATFORM@">
+ <Configuration>Release</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{7C5EE7FC-B5FC-47BF-8164-A452FE689472}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>p11test</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <ClCompile>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\test;..\..\src\lib\pkcs11;..\..\src\lib\common;..\..\src\lib\crypto;..\..\src\lib\object_store;..\..\src\lib\data_mgr;..\..\src\lib\session_mgr;..\..\src\lib\slot_mgr;..\..\src\lib\handle_mgr;..\..\src\lib\win32;@CUINCPATH@;@INCLUDEPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@CULIBPATH@;@DEBUGLIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;cppunitd.lib;@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ <PostBuildEvent>
+ <Command>
+copy ..\..\src\lib\test\softhsm2.conf.win32 "$(TargetDir)\softhsm2.conf"
+copy ..\..\src\lib\test\softhsm2-alt.conf.win32 "$(TargetDir)\softhsm2-alt.conf"
+mkdir "$(TargetDir)\tokens" 2&gt; nul
+copy ..\..\src\lib\test\tokens\dummy.in "$(TargetDir)\tokens\dummy"
+ </Command>
+ <Message>Copying dummy test files to Debug folder</Message>
+ </PostBuildEvent>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\test;..\..\src\lib\pkcs11;..\..\src\lib\common;..\..\src\lib\crypto;..\..\src\lib\object_store;..\..\src\lib\data_mgr;..\..\src\lib\session_mgr;..\..\src\lib\slot_mgr;..\..\src\lib\handle_mgr;..\..\src\lib\win32;@CUINCPATH@;@INCLUDEPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@CULIBPATH@;@LIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;cppunit.lib;@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ <PostBuildEvent>
+ <Command>
+copy ..\..\src\lib\test\softhsm2.conf.win32 "$(TargetDir)\softhsm2.conf"
+copy ..\..\src\lib\test\softhsm2-alt.conf.win32 "$(TargetDir)\softhsm2-alt.conf"
+mkdir "$(TargetDir)\tokens" 2&gt; nul
+copy ..\..\src\lib\test\tokens\dummy.in "$(TargetDir)\tokens\dummy"
+ </Command>
+ <Message>Copying dummy test files to Release folder</Message>
+ </PostBuildEvent>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\access.h" />
+ <ClInclude Include="..\..\src\lib\common\osmutex.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h" />
+ <ClInclude Include="..\..\src\lib\P11Attributes.h" />
+ <ClInclude Include="..\..\src\lib\P11Objects.h" />
+ <ClInclude Include="..\..\src\lib\SoftHSM.h" />
+ <ClInclude Include="..\..\src\lib\test\AsymEncryptDecryptTests.h" />
+ <ClInclude Include="..\..\src\lib\test\AsymWrapUnwrapTests.h" />
+ <ClInclude Include="..\..\src\lib\test\DeriveTests.h" />
+ <ClInclude Include="..\..\src\lib\test\DigestTests.h" />
+ <ClInclude Include="..\..\src\lib\test\InfoTests.h" />
+ <ClInclude Include="..\..\src\lib\test\InitTests.h" />
+ <ClInclude Include="..\..\src\lib\test\ObjectTests.h" />
+ <ClInclude Include="..\..\src\lib\test\RandomTests.h" />
+ <ClInclude Include="..\..\src\lib\test\SessionTests.h" />
+ <ClInclude Include="..\..\src\lib\test\SignVerifyTests.h" />
+ <ClInclude Include="..\..\src\lib\test\SymmetricAlgorithmTests.h" />
+ <ClInclude Include="..\..\src\lib\test\TestsBase.h" />
+ <ClInclude Include="..\..\src\lib\test\TestsNoPINInitBase.h" />
+ <ClInclude Include="..\..\src\lib\test\TokenTests.h" />
+ <ClInclude Include="..\..\src\lib\test\UserTests.h" />
+ <ClInclude Include="..\..\src\lib\win32\setenv.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\access.cpp" />
+ <ClCompile Include="..\..\src\lib\common\osmutex.cpp" />
+ <ClCompile Include="..\..\src\lib\main.cpp" />
+ <ClCompile Include="..\..\src\lib\P11Attributes.cpp" />
+ <ClCompile Include="..\..\src\lib\P11Objects.cpp" />
+ <ClCompile Include="..\..\src\lib\SoftHSM.cpp" />
+ <ClCompile Include="..\..\src\lib\test\AsymEncryptDecryptTests.cpp" />
+ <ClCompile Include="..\..\src\lib\test\AsymWrapUnwrapTests.cpp" />
+ <ClCompile Include="..\..\src\lib\test\DeriveTests.cpp" />
+ <ClCompile Include="..\..\src\lib\test\DigestTests.cpp" />
+ <ClCompile Include="..\..\src\lib\test\InfoTests.cpp" />
+ <ClCompile Include="..\..\src\lib\test\InitTests.cpp" />
+ <ClCompile Include="..\..\src\lib\test\ObjectTests.cpp" />
+ <ClCompile Include="..\..\src\lib\test\p11test.cpp" />
+ <ClCompile Include="..\..\src\lib\test\RandomTests.cpp" />
+ <ClCompile Include="..\..\src\lib\test\SessionTests.cpp" />
+ <ClCompile Include="..\..\src\lib\test\SignVerifyTests.cpp" />
+ <ClCompile Include="..\..\src\lib\test\SymmetricAlgorithmTests.cpp" />
+ <ClCompile Include="..\..\src\lib\test\TestsBase.cpp" />
+ <ClCompile Include="..\..\src\lib\test\TestsNoPINInitBase.cpp" />
+ <ClCompile Include="..\..\src\lib\test\TokenTests.cpp" />
+ <ClCompile Include="..\..\src\lib\test\UserTests.cpp" />
+ <ClCompile Include="..\..\src\lib\win32\setenv.cpp" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
diff --git a/SoftHSMv2/win32/p11test/p11test.vcxproj.user b/SoftHSMv2/win32/p11test/p11test.vcxproj.user
new file mode 100644
index 0000000..695b5c7
--- /dev/null
+++ b/SoftHSMv2/win32/p11test/p11test.vcxproj.user
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+</Project> \ No newline at end of file
diff --git a/SoftHSMv2/win32/sessionmgrtest/sessionmgrtest.vcxproj.filters b/SoftHSMv2/win32/sessionmgrtest/sessionmgrtest.vcxproj.filters
new file mode 100644
index 0000000..dbfb705
--- /dev/null
+++ b/SoftHSMv2/win32/sessionmgrtest/sessionmgrtest.vcxproj.filters
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\session_mgr\test\SessionManagerTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\session_mgr\test\SessionManagerTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\session_mgr\test\sessionmgrtest.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
diff --git a/SoftHSMv2/win32/sessionmgrtest/sessionmgrtest.vcxproj.in b/SoftHSMv2/win32/sessionmgrtest/sessionmgrtest.vcxproj.in
new file mode 100644
index 0000000..572c9c3
--- /dev/null
+++ b/SoftHSMv2/win32/sessionmgrtest/sessionmgrtest.vcxproj.in
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|@PLATFORM@">
+ <Configuration>Debug</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|@PLATFORM@">
+ <Configuration>Release</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{45E2ABF6-91A7-4AA5-A82B-0C8E54BCCCB9}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>sessionmgrtest</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <ClCompile>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\session_mgr;..\..\src\lib\common;..\..\src\lib\pkcs11;..\..\src\lib\crypto;..\..\src\lib\data_mgr;..\..\src\lib\slot_mgr;..\..\src\lib\object_store;..\..\src\lib\win32;@CUINCPATH@;@DEBUGINCPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@CULIBPATH@;@DEBUGLIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;cppunitd.lib;@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\session_mgr;..\..\src\lib\common;..\..\src\lib\pkcs11;..\..\src\lib\crypto;..\..\src\lib\data_mgr;..\..\src\lib\slot_mgr;..\..\src\lib\object_store;..\..\src\lib\win32;@CUINCPATH@;@INCLUDEPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@CULIBPATH@;@LIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;cppunit.lib;@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h" />
+ <ClInclude Include="..\..\src\lib\session_mgr\test\SessionManagerTests.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\session_mgr\test\SessionManagerTests.cpp" />
+ <ClCompile Include="..\..\src\lib\session_mgr\test\sessionmgrtest.cpp" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
diff --git a/SoftHSMv2/win32/sessionmgrtest/sessionmgrtest.vcxproj.user b/SoftHSMv2/win32/sessionmgrtest/sessionmgrtest.vcxproj.user
new file mode 100644
index 0000000..695b5c7
--- /dev/null
+++ b/SoftHSMv2/win32/sessionmgrtest/sessionmgrtest.vcxproj.user
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+</Project> \ No newline at end of file
diff --git a/SoftHSMv2/win32/slotmgrtest/slotmgrtest.vcxproj.filters b/SoftHSMv2/win32/slotmgrtest/slotmgrtest.vcxproj.filters
new file mode 100644
index 0000000..7ddbae5
--- /dev/null
+++ b/SoftHSMv2/win32/slotmgrtest/slotmgrtest.vcxproj.filters
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\slot_mgr\test\SlotManagerTests.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\slot_mgr\test\SlotManagerTests.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\slot_mgr\test\slotmgrtest.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
diff --git a/SoftHSMv2/win32/slotmgrtest/slotmgrtest.vcxproj.in b/SoftHSMv2/win32/slotmgrtest/slotmgrtest.vcxproj.in
new file mode 100644
index 0000000..ea52e3b
--- /dev/null
+++ b/SoftHSMv2/win32/slotmgrtest/slotmgrtest.vcxproj.in
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|@PLATFORM@">
+ <Configuration>Debug</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|@PLATFORM@">
+ <Configuration>Release</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{F62E31E5-0F8D-4B70-8F26-44AFA1A9E645}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>slotmgrtest</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <ClCompile>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\slot_mgr;..\..\src\lib\common;..\..\src\lib\pkcs11;..\..\src\lib\crypto;..\..\src\lib\object_store;..\..\src\lib\session_mgr;..\..\src\lib\data_mgr;..\..\src\lib\win32;@CUINCPATH@;@INCLUDEPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@CULIBPATH@;@DEBUGLIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;cppunitd.lib;@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\slot_mgr;..\..\src\lib\common;..\..\src\lib\pkcs11;..\..\src\lib\crypto;..\..\src\lib\object_store;..\..\src\lib\session_mgr;..\..\src\lib\data_mgr;..\..\src\lib\win32;@CUINCPATH@;@INCLUDEPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@CULIBPATH@;@LIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;cppunit.lib;@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h" />
+ <ClInclude Include="..\..\src\lib\slot_mgr\test\SlotManagerTests.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\slot_mgr\test\SlotManagerTests.cpp" />
+ <ClCompile Include="..\..\src\lib\slot_mgr\test\slotmgrtest.cpp" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
diff --git a/SoftHSMv2/win32/slotmgrtest/slotmgrtest.vcxproj.user b/SoftHSMv2/win32/slotmgrtest/slotmgrtest.vcxproj.user
new file mode 100644
index 0000000..695b5c7
--- /dev/null
+++ b/SoftHSMv2/win32/slotmgrtest/slotmgrtest.vcxproj.user
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+</Project> \ No newline at end of file
diff --git a/SoftHSMv2/win32/softhsm2.sln.in b/SoftHSMv2/win32/softhsm2.sln.in
new file mode 100644
index 0000000..4d98c0d
--- /dev/null
+++ b/SoftHSMv2/win32/softhsm2.sln.in
@@ -0,0 +1,117 @@
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual C++ Express 2010
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "softhsm2", "softhsm2\softhsm2.vcxproj", "{801F5AB2-7A62-4085-B129-D15E2D717219}"
+ ProjectSection(ProjectDependencies) = postProject
+ {F64541B6-FFBF-4368-B93A-A5CA8ADAD795} = {F64541B6-FFBF-4368-B93A-A5CA8ADAD795}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "convarch", "convarch\convarch.vcxproj", "{F64541B6-FFBF-4368-B93A-A5CA8ADAD795}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "keyconv", "keyconv\keyconv.vcxproj", "{9B003E52-F02A-47EA-9942-2D9AE8738161}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "util", "util\util.vcxproj", "{05901466-4184-47C8-9D6C-3BB99BBF5378}"
+ ProjectSection(ProjectDependencies) = postProject
+ {801F5AB2-7A62-4085-B129-D15E2D717219} = {801F5AB2-7A62-4085-B129-D15E2D717219}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dump", "dump\dump.vcxproj", "{F60ACB12-7D05-4A89-B2D1-DD16E1F3566B}"
+EndProject
+@IF TESTS
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "p11test", "p11test\p11test.vcxproj", "{7C5EE7FC-B5FC-47BF-8164-A452FE689472}"
+ ProjectSection(ProjectDependencies) = postProject
+ {801F5AB2-7A62-4085-B129-D15E2D717219} = {801F5AB2-7A62-4085-B129-D15E2D717219}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cryptotest", "cryptotest\cryptotest.vcxproj", "{07E03E0B-C525-4A72-88C6-2238896A4D8C}"
+ ProjectSection(ProjectDependencies) = postProject
+ {F64541B6-FFBF-4368-B93A-A5CA8ADAD795} = {F64541B6-FFBF-4368-B93A-A5CA8ADAD795}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "datamgrtest", "datamgrtest\datamgrtest.vcxproj", "{E20315B5-B49E-46D7-B7EC-1A439F347C95}"
+ ProjectSection(ProjectDependencies) = postProject
+ {F64541B6-FFBF-4368-B93A-A5CA8ADAD795} = {F64541B6-FFBF-4368-B93A-A5CA8ADAD795}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "handlemgrtest", "handlemgrtest\handlemgrtest.vcxproj", "{014B1E10-EC68-4BEC-B992-F92CA2B6816F}"
+ ProjectSection(ProjectDependencies) = postProject
+ {F64541B6-FFBF-4368-B93A-A5CA8ADAD795} = {F64541B6-FFBF-4368-B93A-A5CA8ADAD795}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "objstoretest", "objstoretest\objstoretest.vcxproj", "{44F77533-A4A1-4175-8C4C-07106B3F9C08}"
+ ProjectSection(ProjectDependencies) = postProject
+ {F64541B6-FFBF-4368-B93A-A5CA8ADAD795} = {F64541B6-FFBF-4368-B93A-A5CA8ADAD795}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sessionmgrtest", "sessionmgrtest\sessionmgrtest.vcxproj", "{45E2ABF6-91A7-4AA5-A82B-0C8E54BCCCB9}"
+ ProjectSection(ProjectDependencies) = postProject
+ {F64541B6-FFBF-4368-B93A-A5CA8ADAD795} = {F64541B6-FFBF-4368-B93A-A5CA8ADAD795}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "slotmgrtest", "slotmgrtest\slotmgrtest.vcxproj", "{F62E31E5-0F8D-4B70-8F26-44AFA1A9E645}"
+ ProjectSection(ProjectDependencies) = postProject
+ {F64541B6-FFBF-4368-B93A-A5CA8ADAD795} = {F64541B6-FFBF-4368-B93A-A5CA8ADAD795}
+ EndProjectSection
+EndProject
+@END TESTS
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|@PLATFORM@ = Debug|@PLATFORM@
+ Release|@PLATFORM@ = Release|@PLATFORM@
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {801F5AB2-7A62-4085-B129-D15E2D717219}.Debug|@PLATFORM@.ActiveCfg = Debug|@PLATFORM@
+ {801F5AB2-7A62-4085-B129-D15E2D717219}.Debug|@PLATFORM@.Build.0 = Debug|@PLATFORM@
+ {801F5AB2-7A62-4085-B129-D15E2D717219}.Release|@PLATFORM@.ActiveCfg = Release|@PLATFORM@
+ {801F5AB2-7A62-4085-B129-D15E2D717219}.Release|@PLATFORM@.Build.0 = Release|@PLATFORM@
+ {F64541B6-FFBF-4368-B93A-A5CA8ADAD795}.Debug|@PLATFORM@.ActiveCfg = Debug|@PLATFORM@
+ {F64541B6-FFBF-4368-B93A-A5CA8ADAD795}.Debug|@PLATFORM@.Build.0 = Debug|@PLATFORM@
+ {F64541B6-FFBF-4368-B93A-A5CA8ADAD795}.Release|@PLATFORM@.ActiveCfg = Release|@PLATFORM@
+ {F64541B6-FFBF-4368-B93A-A5CA8ADAD795}.Release|@PLATFORM@.Build.0 = Release|@PLATFORM@
+ {9B003E52-F02A-47EA-9942-2D9AE8738161}.Debug|@PLATFORM@.ActiveCfg = Debug|@PLATFORM@
+ {9B003E52-F02A-47EA-9942-2D9AE8738161}.Debug|@PLATFORM@.Build.0 = Debug|@PLATFORM@
+ {9B003E52-F02A-47EA-9942-2D9AE8738161}.Release|@PLATFORM@.ActiveCfg = Release|@PLATFORM@
+ {9B003E52-F02A-47EA-9942-2D9AE8738161}.Release|@PLATFORM@.Build.0 = Release|@PLATFORM@
+ {05901466-4184-47C8-9D6C-3BB99BBF5378}.Debug|@PLATFORM@.ActiveCfg = Debug|@PLATFORM@
+ {05901466-4184-47C8-9D6C-3BB99BBF5378}.Debug|@PLATFORM@.Build.0 = Debug|@PLATFORM@
+ {05901466-4184-47C8-9D6C-3BB99BBF5378}.Release|@PLATFORM@.ActiveCfg = Release|@PLATFORM@
+ {05901466-4184-47C8-9D6C-3BB99BBF5378}.Release|@PLATFORM@.Build.0 = Release|@PLATFORM@
+ {F60ACB12-7D05-4A89-B2D1-DD16E1F3566B}.Debug|@PLATFORM@.ActiveCfg = Debug|@PLATFORM@
+ {F60ACB12-7D05-4A89-B2D1-DD16E1F3566B}.Debug|@PLATFORM@.Build.0 = Debug|@PLATFORM@
+ {F60ACB12-7D05-4A89-B2D1-DD16E1F3566B}.Release|@PLATFORM@.ActiveCfg = Release|@PLATFORM@
+ {F60ACB12-7D05-4A89-B2D1-DD16E1F3566B}.Release|@PLATFORM@.Build.0 = Release|@PLATFORM@
+@IF TESTS
+ {7C5EE7FC-B5FC-47BF-8164-A452FE689472}.Debug|@PLATFORM@.ActiveCfg = Debug|@PLATFORM@
+ {7C5EE7FC-B5FC-47BF-8164-A452FE689472}.Debug|@PLATFORM@.Build.0 = Debug|@PLATFORM@
+ {7C5EE7FC-B5FC-47BF-8164-A452FE689472}.Release|@PLATFORM@.ActiveCfg = Release|@PLATFORM@
+ {7C5EE7FC-B5FC-47BF-8164-A452FE689472}.Release|@PLATFORM@.Build.0 = Release|@PLATFORM@
+ {07E03E0B-C525-4A72-88C6-2238896A4D8C}.Debug|@PLATFORM@.ActiveCfg = Debug|@PLATFORM@
+ {07E03E0B-C525-4A72-88C6-2238896A4D8C}.Debug|@PLATFORM@.Build.0 = Debug|@PLATFORM@
+ {07E03E0B-C525-4A72-88C6-2238896A4D8C}.Release|@PLATFORM@.ActiveCfg = Release|@PLATFORM@
+ {07E03E0B-C525-4A72-88C6-2238896A4D8C}.Release|@PLATFORM@.Build.0 = Release|@PLATFORM@
+ {E20315B5-B49E-46D7-B7EC-1A439F347C95}.Debug|@PLATFORM@.ActiveCfg = Debug|@PLATFORM@
+ {E20315B5-B49E-46D7-B7EC-1A439F347C95}.Debug|@PLATFORM@.Build.0 = Debug|@PLATFORM@
+ {E20315B5-B49E-46D7-B7EC-1A439F347C95}.Release|@PLATFORM@.ActiveCfg = Release|@PLATFORM@
+ {E20315B5-B49E-46D7-B7EC-1A439F347C95}.Release|@PLATFORM@.Build.0 = Release|@PLATFORM@
+ {014B1E10-EC68-4BEC-B992-F92CA2B6816F}.Debug|@PLATFORM@.ActiveCfg = Debug|@PLATFORM@
+ {014B1E10-EC68-4BEC-B992-F92CA2B6816F}.Debug|@PLATFORM@.Build.0 = Debug|@PLATFORM@
+ {014B1E10-EC68-4BEC-B992-F92CA2B6816F}.Release|@PLATFORM@.ActiveCfg = Release|@PLATFORM@
+ {014B1E10-EC68-4BEC-B992-F92CA2B6816F}.Release|@PLATFORM@.Build.0 = Release|@PLATFORM@
+ {44F77533-A4A1-4175-8C4C-07106B3F9C08}.Debug|@PLATFORM@.ActiveCfg = Debug|@PLATFORM@
+ {44F77533-A4A1-4175-8C4C-07106B3F9C08}.Debug|@PLATFORM@.Build.0 = Debug|@PLATFORM@
+ {44F77533-A4A1-4175-8C4C-07106B3F9C08}.Release|@PLATFORM@.ActiveCfg = Release|@PLATFORM@
+ {44F77533-A4A1-4175-8C4C-07106B3F9C08}.Release|@PLATFORM@.Build.0 = Release|@PLATFORM@
+ {45E2ABF6-91A7-4AA5-A82B-0C8E54BCCCB9}.Debug|@PLATFORM@.ActiveCfg = Debug|@PLATFORM@
+ {45E2ABF6-91A7-4AA5-A82B-0C8E54BCCCB9}.Debug|@PLATFORM@.Build.0 = Debug|@PLATFORM@
+ {45E2ABF6-91A7-4AA5-A82B-0C8E54BCCCB9}.Release|@PLATFORM@.ActiveCfg = Release|@PLATFORM@
+ {45E2ABF6-91A7-4AA5-A82B-0C8E54BCCCB9}.Release|@PLATFORM@.Build.0 = Release|@PLATFORM@
+ {F62E31E5-0F8D-4B70-8F26-44AFA1A9E645}.Debug|@PLATFORM@.ActiveCfg = Debug|@PLATFORM@
+ {F62E31E5-0F8D-4B70-8F26-44AFA1A9E645}.Debug|@PLATFORM@.Build.0 = Debug|@PLATFORM@
+ {F62E31E5-0F8D-4B70-8F26-44AFA1A9E645}.Release|@PLATFORM@.ActiveCfg = Release|@PLATFORM@
+ {F62E31E5-0F8D-4B70-8F26-44AFA1A9E645}.Release|@PLATFORM@.Build.0 = Release|@PLATFORM@
+@END TESTS
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/SoftHSMv2/win32/softhsm2/softhsm2.vcxproj.filters b/SoftHSMv2/win32/softhsm2/softhsm2.vcxproj.filters
new file mode 100644
index 0000000..1f7b8b2
--- /dev/null
+++ b/SoftHSMv2/win32/softhsm2/softhsm2.vcxproj.filters
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\access.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\P11Attributes.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\P11Objects.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\SoftHSM.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\access.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\main.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\P11Attributes.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\P11Objects.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\SoftHSM.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\win32\dllmain.cc">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
diff --git a/SoftHSMv2/win32/softhsm2/softhsm2.vcxproj.in b/SoftHSMv2/win32/softhsm2/softhsm2.vcxproj.in
new file mode 100644
index 0000000..efa808e
--- /dev/null
+++ b/SoftHSMv2/win32/softhsm2/softhsm2.vcxproj.in
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|@PLATFORM@">
+ <Configuration>Debug</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|@PLATFORM@">
+ <Configuration>Release</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{801F5AB2-7A62-4085-B129-D15E2D717219}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>softhsm2</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>DynamicLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>DynamicLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <ClCompile>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_WINDOWS;_USRDLL;SOFTHSM2_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\pkcs11;..\..\src\lib\common;..\..\src\lib\object_store;..\..\src\lib\slot_mgr;..\..\src\lib\session_mgr;..\..\src\lib\data_mgr;..\..\src\lib\handle_mgr;..\..\src\lib\crypto;..\..\src\lib\win32;@INCLUDEPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@DEBUGLIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_WINDOWS;_USRDLL;SOFTHSM2_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\lib;..\..\src\lib\pkcs11;..\..\src\lib\common;..\..\src\lib\object_store;..\..\src\lib\slot_mgr;..\..\src\lib\session_mgr;..\..\src\lib\data_mgr;..\..\src\lib\handle_mgr;..\..\src\lib\crypto;..\..\src\lib\win32;@INCLUDEPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@LIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\lib\access.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h" />
+ <ClInclude Include="..\..\src\lib\P11Attributes.h" />
+ <ClInclude Include="..\..\src\lib\P11Objects.h" />
+ <ClInclude Include="..\..\src\lib\SoftHSM.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib\access.cpp" />
+ <ClCompile Include="..\..\src\lib\main.cpp" />
+ <ClCompile Include="..\..\src\lib\P11Attributes.cpp" />
+ <ClCompile Include="..\..\src\lib\P11Objects.cpp" />
+ <ClCompile Include="..\..\src\lib\SoftHSM.cpp" />
+ <ClCompile Include="..\..\src\lib\win32\dllmain.cc" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
diff --git a/SoftHSMv2/win32/softhsm2/softhsm2.vcxproj.user b/SoftHSMv2/win32/softhsm2/softhsm2.vcxproj.user
new file mode 100644
index 0000000..695b5c7
--- /dev/null
+++ b/SoftHSMv2/win32/softhsm2/softhsm2.vcxproj.user
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+</Project> \ No newline at end of file
diff --git a/SoftHSMv2/win32/util/util.vcxproj.filters.in b/SoftHSMv2/win32/util/util.vcxproj.filters.in
new file mode 100644
index 0000000..2c4171b
--- /dev/null
+++ b/SoftHSMv2/win32/util/util.vcxproj.filters.in
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ <Filter Include="Common Header Files">
+ <UniqueIdentifier>{21eda3a1-8da0-4a99-967c-f218e4eecd08}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Common Source Files">
+ <UniqueIdentifier>{fd946626-7e24-4f78-834b-a4c0ac6dc2f5}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Win32 Header Files">
+ <UniqueIdentifier>{f3a7acce-323d-4465-95bf-a326189dcdd5}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Win32 Source Files">
+ <UniqueIdentifier>{2b77905a-99da-49cf-9cac-aa72e7e3182b}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\bin\common\findslot.h">
+ <Filter>Common Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\bin\common\getpw.h">
+ <Filter>Common Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\bin\common\library.h">
+ <Filter>Common Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\bin\util\softhsm2-util.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+@IF BOTAN
+ <ClInclude Include="..\..\src\bin\util\softhsm2-util-botan.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+@END BOTAN
+@IF OPENSSL
+ <ClInclude Include="..\..\src\bin\util\softhsm2-util-ossl.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\crypto\OSSLComp.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+@END OPENSSL
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\bin\win32\getopt.h">
+ <Filter>Win32 Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\bin\common\findslot.cpp">
+ <Filter>Common Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\bin\common\getpw.cpp">
+ <Filter>Common Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\bin\common\library.cpp">
+ <Filter>Common Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\bin\util\softhsm2-util.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+@IF BOTAN
+ <ClCompile Include="..\..\src\bin\util\softhsm2-util-botan.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+@END BOTAN
+@IF OPENSSL
+ <ClCompile Include="..\..\src\bin\util\softhsm2-util-ossl.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib\crypto\OSSLComp.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+@END OPENSSL
+ <ClCompile Include="..\..\src\bin\win32\getopt.cpp">
+ <Filter>Win32 Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\bin\win32\getpassphase.cpp">
+ <Filter>Win32 Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
diff --git a/SoftHSMv2/win32/util/util.vcxproj.in b/SoftHSMv2/win32/util/util.vcxproj.in
new file mode 100644
index 0000000..28bdcd0
--- /dev/null
+++ b/SoftHSMv2/win32/util/util.vcxproj.in
@@ -0,0 +1,130 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|@PLATFORM@">
+ <Configuration>Debug</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|@PLATFORM@">
+ <Configuration>Release</Configuration>
+ <Platform>@PLATFORM@</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{05901466-4184-47C8-9D6C-3BB99BBF5378}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>util</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>@PLATFORMTOOLSET@</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <LinkIncremental>true</LinkIncremental>
+ <TargetName>softhsm2-util</TargetName>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <LinkIncremental>false</LinkIncremental>
+ <TargetName>softhsm2-util</TargetName>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@PLATFORM@'">
+ <ClCompile>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\bin\common;..\..\src\bin\win32;..\..\src\lib\pkcs11;..\..\src\lib;..\..\src\lib\common;..\..\src\lib\crypto;..\..\src\lib\data_mgr;..\..\src\lib\object_store;..\..\src\lib\win32\;@DEBUGINCPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@DEBUGLIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ <PostBuildEvent>
+ <Command>if exist @DEBUGDLLPATH@ copy @DEBUGDLLPATH@ ..\@PLATFORMDIR@$(Configuration)</Command>
+ </PostBuildEvent>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|@PLATFORM@'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>..;..\..\src\bin\common;..\..\src\bin\win32;..\..\src\lib\pkcs11;..\..\src\lib;..\..\src\lib\common;..\..\src\lib\crypto;..\..\src\lib\data_mgr;..\..\src\lib\object_store;..\..\src\lib\win32\;@INCLUDEPATH@;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <RuntimeLibrary>@RUNTIMELIBRARY@</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <AdditionalLibraryDirectories>..\@PLATFORMDIR@$(Configuration);@LIBPATH@;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>convarch.lib;@LIBNAME@;@EXTRALIBS@%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ <PostBuildEvent>
+ <Command>if exist @DLLPATH@ copy @DLLPATH@ ..\@PLATFORMDIR@$(Configuration)</Command>
+ </PostBuildEvent>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\bin\common\findslot.h" />
+ <ClInclude Include="..\..\src\bin\common\getpw.h" />
+ <ClInclude Include="..\..\src\bin\common\library.h" />
+@IF BOTAN
+ <ClInclude Include="..\..\src\bin\util\softhsm2-util-botan.h" />
+@END BOTAN
+@IF OPENSSL
+ <ClInclude Include="..\..\src\bin\util\softhsm2-util-ossl.h" />
+ <ClInclude Include="..\..\src\lib\crypto\OSSLComp.h" />
+@END OPENSSL
+ <ClInclude Include="..\..\src\bin\util\softhsm2-util.h" />
+ <ClInclude Include="..\..\src\bin\win32\getopt.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\cryptoki.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11f.h" />
+ <ClInclude Include="..\..\src\lib\pkcs11\pkcs11t.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\bin\common\findslot.cpp" />
+ <ClCompile Include="..\..\src\bin\common\getpw.cpp" />
+ <ClCompile Include="..\..\src\bin\common\library.cpp" />
+@IF BOTAN
+ <ClCompile Include="..\..\src\bin\util\softhsm2-util-botan.cpp" />
+@END BOTAN
+@IF OPENSSL
+ <ClCompile Include="..\..\src\bin\util\softhsm2-util-ossl.cpp" />
+ <ClCompile Include="..\..\src\lib\crypto\OSSLComp.cpp" />
+@END OPENSSL
+ <ClCompile Include="..\..\src\bin\util\softhsm2-util.cpp" />
+ <ClCompile Include="..\..\src\bin\win32\getopt.cpp" />
+ <ClCompile Include="..\..\src\bin\win32\getpassphase.cpp" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
diff --git a/SoftHSMv2/win32/util/util.vcxproj.user b/SoftHSMv2/win32/util/util.vcxproj.user
new file mode 100644
index 0000000..695b5c7
--- /dev/null
+++ b/SoftHSMv2/win32/util/util.vcxproj.user
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+</Project> \ No newline at end of file