diff --git a/VisualStudio/liboqs.sln b/VisualStudio/liboqs.sln
index c994da586..0ac986681 100644
--- a/VisualStudio/liboqs.sln
+++ b/VisualStudio/liboqs.sln
@@ -24,42 +24,78 @@ Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
+ DebugDLL|x64 = DebugDLL|x64
+ DebugDLL|x86 = DebugDLL|x86
Release|x64 = Release|x64
Release|x86 = Release|x86
+ ReleaseDLL|x64 = ReleaseDLL|x64
+ ReleaseDLL|x86 = ReleaseDLL|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{6BB96591-0BCD-42E6-8863-4B9BFE75530C}.Debug|x64.ActiveCfg = Debug|x64
{6BB96591-0BCD-42E6-8863-4B9BFE75530C}.Debug|x64.Build.0 = Debug|x64
{6BB96591-0BCD-42E6-8863-4B9BFE75530C}.Debug|x86.ActiveCfg = Debug|Win32
{6BB96591-0BCD-42E6-8863-4B9BFE75530C}.Debug|x86.Build.0 = Debug|Win32
+ {6BB96591-0BCD-42E6-8863-4B9BFE75530C}.DebugDLL|x64.ActiveCfg = DebugDLL|x64
+ {6BB96591-0BCD-42E6-8863-4B9BFE75530C}.DebugDLL|x64.Build.0 = DebugDLL|x64
+ {6BB96591-0BCD-42E6-8863-4B9BFE75530C}.DebugDLL|x86.ActiveCfg = DebugDLL|Win32
+ {6BB96591-0BCD-42E6-8863-4B9BFE75530C}.DebugDLL|x86.Build.0 = DebugDLL|Win32
{6BB96591-0BCD-42E6-8863-4B9BFE75530C}.Release|x64.ActiveCfg = Release|x64
{6BB96591-0BCD-42E6-8863-4B9BFE75530C}.Release|x64.Build.0 = Release|x64
{6BB96591-0BCD-42E6-8863-4B9BFE75530C}.Release|x86.ActiveCfg = Release|Win32
{6BB96591-0BCD-42E6-8863-4B9BFE75530C}.Release|x86.Build.0 = Release|Win32
+ {6BB96591-0BCD-42E6-8863-4B9BFE75530C}.ReleaseDLL|x64.ActiveCfg = ReleaseDLL|x64
+ {6BB96591-0BCD-42E6-8863-4B9BFE75530C}.ReleaseDLL|x64.Build.0 = ReleaseDLL|x64
+ {6BB96591-0BCD-42E6-8863-4B9BFE75530C}.ReleaseDLL|x86.ActiveCfg = ReleaseDLL|Win32
+ {6BB96591-0BCD-42E6-8863-4B9BFE75530C}.ReleaseDLL|x86.Build.0 = ReleaseDLL|Win32
{DCFEFB81-4696-45D2-9FCA-351CCFC13C74}.Debug|x64.ActiveCfg = Debug|x64
{DCFEFB81-4696-45D2-9FCA-351CCFC13C74}.Debug|x64.Build.0 = Debug|x64
{DCFEFB81-4696-45D2-9FCA-351CCFC13C74}.Debug|x86.ActiveCfg = Debug|Win32
{DCFEFB81-4696-45D2-9FCA-351CCFC13C74}.Debug|x86.Build.0 = Debug|Win32
+ {DCFEFB81-4696-45D2-9FCA-351CCFC13C74}.DebugDLL|x64.ActiveCfg = DebugDLL|x64
+ {DCFEFB81-4696-45D2-9FCA-351CCFC13C74}.DebugDLL|x64.Build.0 = DebugDLL|x64
+ {DCFEFB81-4696-45D2-9FCA-351CCFC13C74}.DebugDLL|x86.ActiveCfg = DebugDLL|Win32
+ {DCFEFB81-4696-45D2-9FCA-351CCFC13C74}.DebugDLL|x86.Build.0 = DebugDLL|Win32
{DCFEFB81-4696-45D2-9FCA-351CCFC13C74}.Release|x64.ActiveCfg = Release|x64
{DCFEFB81-4696-45D2-9FCA-351CCFC13C74}.Release|x64.Build.0 = Release|x64
{DCFEFB81-4696-45D2-9FCA-351CCFC13C74}.Release|x86.ActiveCfg = Release|Win32
{DCFEFB81-4696-45D2-9FCA-351CCFC13C74}.Release|x86.Build.0 = Release|Win32
+ {DCFEFB81-4696-45D2-9FCA-351CCFC13C74}.ReleaseDLL|x64.ActiveCfg = ReleaseDLL|x64
+ {DCFEFB81-4696-45D2-9FCA-351CCFC13C74}.ReleaseDLL|x64.Build.0 = ReleaseDLL|x64
+ {DCFEFB81-4696-45D2-9FCA-351CCFC13C74}.ReleaseDLL|x86.ActiveCfg = ReleaseDLL|Win32
+ {DCFEFB81-4696-45D2-9FCA-351CCFC13C74}.ReleaseDLL|x86.Build.0 = ReleaseDLL|Win32
{820B79FE-57D7-4539-A0CA-B668A0723B9B}.Debug|x64.ActiveCfg = Debug|x64
{820B79FE-57D7-4539-A0CA-B668A0723B9B}.Debug|x64.Build.0 = Debug|x64
{820B79FE-57D7-4539-A0CA-B668A0723B9B}.Debug|x86.ActiveCfg = Debug|Win32
{820B79FE-57D7-4539-A0CA-B668A0723B9B}.Debug|x86.Build.0 = Debug|Win32
+ {820B79FE-57D7-4539-A0CA-B668A0723B9B}.DebugDLL|x64.ActiveCfg = DebugDLL|x64
+ {820B79FE-57D7-4539-A0CA-B668A0723B9B}.DebugDLL|x64.Build.0 = DebugDLL|x64
+ {820B79FE-57D7-4539-A0CA-B668A0723B9B}.DebugDLL|x86.ActiveCfg = DebugDLL|Win32
+ {820B79FE-57D7-4539-A0CA-B668A0723B9B}.DebugDLL|x86.Build.0 = DebugDLL|Win32
{820B79FE-57D7-4539-A0CA-B668A0723B9B}.Release|x64.ActiveCfg = Release|x64
{820B79FE-57D7-4539-A0CA-B668A0723B9B}.Release|x64.Build.0 = Release|x64
{820B79FE-57D7-4539-A0CA-B668A0723B9B}.Release|x86.ActiveCfg = Release|Win32
{820B79FE-57D7-4539-A0CA-B668A0723B9B}.Release|x86.Build.0 = Release|Win32
+ {820B79FE-57D7-4539-A0CA-B668A0723B9B}.ReleaseDLL|x64.ActiveCfg = ReleaseDLL|x64
+ {820B79FE-57D7-4539-A0CA-B668A0723B9B}.ReleaseDLL|x64.Build.0 = ReleaseDLL|x64
+ {820B79FE-57D7-4539-A0CA-B668A0723B9B}.ReleaseDLL|x86.ActiveCfg = ReleaseDLL|Win32
+ {820B79FE-57D7-4539-A0CA-B668A0723B9B}.ReleaseDLL|x86.Build.0 = ReleaseDLL|Win32
{990D1E9C-75E0-4E17-8514-6DA0858BC17C}.Debug|x64.ActiveCfg = Debug|x64
{990D1E9C-75E0-4E17-8514-6DA0858BC17C}.Debug|x64.Build.0 = Debug|x64
{990D1E9C-75E0-4E17-8514-6DA0858BC17C}.Debug|x86.ActiveCfg = Debug|Win32
{990D1E9C-75E0-4E17-8514-6DA0858BC17C}.Debug|x86.Build.0 = Debug|Win32
+ {990D1E9C-75E0-4E17-8514-6DA0858BC17C}.DebugDLL|x64.ActiveCfg = DebugDLL|x64
+ {990D1E9C-75E0-4E17-8514-6DA0858BC17C}.DebugDLL|x64.Build.0 = DebugDLL|x64
+ {990D1E9C-75E0-4E17-8514-6DA0858BC17C}.DebugDLL|x86.ActiveCfg = DebugDLL|Win32
+ {990D1E9C-75E0-4E17-8514-6DA0858BC17C}.DebugDLL|x86.Build.0 = DebugDLL|Win32
{990D1E9C-75E0-4E17-8514-6DA0858BC17C}.Release|x64.ActiveCfg = Release|x64
{990D1E9C-75E0-4E17-8514-6DA0858BC17C}.Release|x64.Build.0 = Release|x64
{990D1E9C-75E0-4E17-8514-6DA0858BC17C}.Release|x86.ActiveCfg = Release|Win32
{990D1E9C-75E0-4E17-8514-6DA0858BC17C}.Release|x86.Build.0 = Release|Win32
+ {990D1E9C-75E0-4E17-8514-6DA0858BC17C}.ReleaseDLL|x64.ActiveCfg = ReleaseDLL|x64
+ {990D1E9C-75E0-4E17-8514-6DA0858BC17C}.ReleaseDLL|x64.Build.0 = ReleaseDLL|x64
+ {990D1E9C-75E0-4E17-8514-6DA0858BC17C}.ReleaseDLL|x86.ActiveCfg = ReleaseDLL|Win32
+ {990D1E9C-75E0-4E17-8514-6DA0858BC17C}.ReleaseDLL|x86.Build.0 = ReleaseDLL|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/VisualStudio/oqs/dll.def b/VisualStudio/oqs/dll.def
new file mode 100644
index 000000000..78108879d
--- /dev/null
+++ b/VisualStudio/oqs/dll.def
@@ -0,0 +1,17 @@
+LIBRARY oqs
+EXPORTS
+ OQS_RAND_new
+ OQS_RAND_free
+ OQS_RAND_8
+ OQS_RAND_32
+ OQS_RAND_64
+ OQS_RAND_n
+ OQS_RAND_test_record_occurrence
+ OQS_RAND_report_statistics
+ OQS_KEX_new
+ OQS_KEX_alice_0
+ OQS_KEX_bob
+ OQS_KEX_alice_1
+ OQS_KEX_alice_priv_free
+ OQS_KEX_free
+ free
diff --git a/VisualStudio/oqs/oqs.vcxproj b/VisualStudio/oqs/oqs.vcxproj
index 94b3b9fa4..d65b4db8a 100644
--- a/VisualStudio/oqs/oqs.vcxproj
+++ b/VisualStudio/oqs/oqs.vcxproj
@@ -1,10 +1,26 @@
+
+ DebugDLL
+ Win32
+
+
+ DebugDLL
+ x64
+
Debug
Win32
+
+ ReleaseDLL
+ Win32
+
+
+ ReleaseDLL
+ x64
+
Release
Win32
@@ -70,7 +86,6 @@
-
@@ -84,6 +99,9 @@
+
+
+
{DCFEFB81-4696-45D2-9FCA-351CCFC13C74}
Win32Proj
@@ -97,6 +115,12 @@
v141
Unicode
+
+ DynamicLibrary
+ true
+ v141
+ Unicode
+
StaticLibrary
false
@@ -104,12 +128,25 @@
true
Unicode
+
+ DynamicLibrary
+ false
+ v141
+ true
+ Unicode
+
StaticLibrary
true
v141
Unicode
+
+ DynamicLibrary
+ true
+ v141
+ Unicode
+
StaticLibrary
false
@@ -117,6 +154,13 @@
true
Unicode
+
+ DynamicLibrary
+ false
+ v141
+ true
+ Unicode
+
@@ -125,31 +169,51 @@
+
+
+
+
+
+
+
+
+
+
+
+
$(SolutionDir)$(Platform)\$(Configuration)\
$(Platform)\$(Configuration)\
+
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ $(Platform)\$(Configuration)\
+
$(SolutionDir)$(Platform)\$(Configuration)\
$(Platform)\$(Configuration)\
+
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ $(Platform)\$(Configuration)\
+
Level3
Disabled
- DISABLE_NTRU_ON_WINDOWS_BY_DEFAULT;AES_DISABLE_NI;OQS_RAND_DEFAULT_URANDOM_CHACHA20;OQS_KEX_DEFAULT_BCNS15;CONSTANT_TIME;WINDOWS;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)
+ inline=__inline;DISABLE_NTRU_ON_WINDOWS_BY_DEFAULT;AES_DISABLE_NI;OQS_RAND_DEFAULT_URANDOM_CHACHA20;OQS_KEX_DEFAULT_BCNS15;CONSTANT_TIME;WINDOWS;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)
false
$(SolutionDir)include
MultiThreadedDebug
@@ -177,6 +241,44 @@ copy "$(SolutionDir)..\src\kex_ntru\kex_ntru.h" "$(SolutionDir)include\oqs\"
copy "$(SolutionDir)..\src\kex_mlwe_kyber\kex_mlwe_kyber.h" "$(SolutionDir)include\oqs\"
copy "$(SolutionDir)..\src\sig\sig.h" "$(SolutionDir)include\oqs\"
copy "$(SolutionDir)..\src\sig_picnic\sig_picnic.h" "$(SolutionDir)include\oqs\"
+
+
+
+
+
+
+
+ Level3
+ Disabled
+ inline=__inline;DISABLE_NTRU_ON_WINDOWS_BY_DEFAULT;AES_DISABLE_NI;OQS_RAND_DEFAULT_URANDOM_CHACHA20;OQS_KEX_DEFAULT_BCNS15;CONSTANT_TIME;WINDOWS;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)
+ false
+ $(SolutionDir)include
+ MultiThreadedDebugDLL
+
+
+ Windows
+ dll.def
+
+
+ mkdir "$(SolutionDir)include\oqs"
+del /Q "$(SolutionDir)include\oqs\*.*"
+copy "$(SolutionDir)..\src\common\common.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\aes\aes.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\rand\rand.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\rand_urandom_chacha20\rand_urandom_chacha20.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\rand_urandom_aesctr\rand_urandom_aesctr.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\sha3\sha3.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex\kex.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_rlwe_bcns15\kex_rlwe_bcns15.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_rlwe_newhope\kex_rlwe_newhope.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_rlwe_msrln16\kex_rlwe_msrln16.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_lwe_frodo\kex_lwe_frodo.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_sidh_cln16\kex_sidh_cln16.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_code_mcbits\kex_code_mcbits.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_ntru\kex_ntru.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_mlwe_kyber\kex_mlwe_kyber.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\sig\sig.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\sig_picnic\sig_picnic.h" "$(SolutionDir)include\oqs\"
@@ -186,7 +288,7 @@ copy "$(SolutionDir)..\src\sig_picnic\sig_picnic.h" "$(SolutionDir)include\oqs\"
Level3
Disabled
- _CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;DISABLE_NTRU_ON_WINDOWS_BY_DEFAULT;OQS_RAND_DEFAULT_URANDOM_CHACHA20;OQS_KEX_DEFAULT_BCNS15;CONSTANT_TIME;WINDOWS;_DEBUG;_LIB;%(PreprocessorDefinitions)
+ inline=__inline;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;DISABLE_NTRU_ON_WINDOWS_BY_DEFAULT;OQS_RAND_DEFAULT_URANDOM_CHACHA20;OQS_KEX_DEFAULT_BCNS15;CONSTANT_TIME;WINDOWS;_DEBUG;_LIB;%(PreprocessorDefinitions)
false
$(SolutionDir)include
MultiThreadedDebug
@@ -221,6 +323,48 @@ copy "$(SolutionDir)..\src\sig_picnic\sig_picnic.h" "$(SolutionDir)include\oqs\"
/ignore:4006 %(AdditionalOptions)
+
+
+
+
+ Level3
+ Disabled
+ inline=__inline;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;DISABLE_NTRU_ON_WINDOWS_BY_DEFAULT;OQS_RAND_DEFAULT_URANDOM_CHACHA20;OQS_KEX_DEFAULT_BCNS15;CONSTANT_TIME;WINDOWS;_DEBUG;_LIB;%(PreprocessorDefinitions)
+ false
+ $(SolutionDir)include
+ MultiThreadedDebugDLL
+ true
+
+
+ Windows
+ dll.def
+
+
+ mkdir "$(SolutionDir)include\oqs"
+del /Q "$(SolutionDir)include\oqs\*.*"
+copy "$(SolutionDir)..\src\common\common.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\aes\aes.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\rand\rand.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\rand_urandom_chacha20\rand_urandom_chacha20.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\rand_urandom_aesctr\rand_urandom_aesctr.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\sha3\sha3.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex\kex.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_rlwe_bcns15\kex_rlwe_bcns15.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_rlwe_newhope\kex_rlwe_newhope.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_rlwe_msrln16\kex_rlwe_msrln16.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_lwe_frodo\kex_lwe_frodo.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_sidh_cln16\kex_sidh_cln16.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_code_mcbits\kex_code_mcbits.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_ntru\kex_ntru.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_mlwe_kyber\kex_mlwe_kyber.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\sig\sig.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\sig_picnic\sig_picnic.h" "$(SolutionDir)include\oqs\"
+
+
+
+ /ignore:4006 %(AdditionalOptions)
+
+
Level3
@@ -229,7 +373,7 @@ copy "$(SolutionDir)..\src\sig_picnic\sig_picnic.h" "$(SolutionDir)include\oqs\"
MaxSpeed
true
true
- DISABLE_NTRU_ON_WINDOWS_BY_DEFAULT;AES_DISABLE_NI;OQS_RAND_DEFAULT_URANDOM_CHACHA20;OQS_KEX_DEFAULT_BCNS15;CONSTANT_TIME;WINDOWS;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)
+ inline=__inline;DISABLE_NTRU_ON_WINDOWS_BY_DEFAULT;AES_DISABLE_NI;OQS_RAND_DEFAULT_URANDOM_CHACHA20;OQS_KEX_DEFAULT_BCNS15;CONSTANT_TIME;WINDOWS;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)
false
$(SolutionDir)include
MultiThreaded
@@ -259,6 +403,48 @@ copy "$(SolutionDir)..\src\kex_ntru\kex_ntru.h" "$(SolutionDir)include\oqs\"
copy "$(SolutionDir)..\src\kex_mlwe_kyber\kex_mlwe_kyber.h" "$(SolutionDir)include\oqs\"
copy "$(SolutionDir)..\src\sig\sig.h" "$(SolutionDir)include\oqs\"
copy "$(SolutionDir)..\src\sig_picnic\sig_picnic.h" "$(SolutionDir)include\oqs\"
+
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ inline=__inline;DISABLE_NTRU_ON_WINDOWS_BY_DEFAULT;AES_DISABLE_NI;OQS_RAND_DEFAULT_URANDOM_CHACHA20;OQS_KEX_DEFAULT_BCNS15;CONSTANT_TIME;WINDOWS;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)
+ false
+ $(SolutionDir)include
+ MultiThreadedDLL
+
+
+ Windows
+ true
+ true
+ dll.def
+
+
+ mkdir "$(SolutionDir)include\oqs"
+del /Q "$(SolutionDir)include\oqs\*.*"
+copy "$(SolutionDir)..\src\common\common.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\aes\aes.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\rand\rand.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\rand_urandom_chacha20\rand_urandom_chacha20.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\rand_urandom_aesctr\rand_urandom_aesctr.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\sha3\sha3.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex\kex.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_rlwe_bcns15\kex_rlwe_bcns15.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_rlwe_newhope\kex_rlwe_newhope.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_rlwe_msrln16\kex_rlwe_msrln16.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_lwe_frodo\kex_lwe_frodo.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_sidh_cln16\kex_sidh_cln16.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_code_mcbits\kex_code_mcbits.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_ntru\kex_ntru.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_mlwe_kyber\kex_mlwe_kyber.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\sig\sig.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\sig_picnic\sig_picnic.h" "$(SolutionDir)include\oqs\"
@@ -270,7 +456,7 @@ copy "$(SolutionDir)..\src\sig_picnic\sig_picnic.h" "$(SolutionDir)include\oqs\"
MaxSpeed
true
true
- _CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;DISABLE_NTRU_ON_WINDOWS_BY_DEFAULT;OQS_RAND_DEFAULT_URANDOM_CHACHA20;OQS_KEX_DEFAULT_BCNS15;CONSTANT_TIME;WINDOWS;NDEBUG;_LIB;%(PreprocessorDefinitions)
+ inline=__inline;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;DISABLE_NTRU_ON_WINDOWS_BY_DEFAULT;OQS_RAND_DEFAULT_URANDOM_CHACHA20;OQS_KEX_DEFAULT_BCNS15;CONSTANT_TIME;WINDOWS;NDEBUG;_LIB;%(PreprocessorDefinitions)
false
$(SolutionDir)include
MultiThreaded
@@ -307,6 +493,52 @@ copy "$(SolutionDir)..\src\sig_picnic\sig_picnic.h" "$(SolutionDir)include\oqs\"
/ignore:4006 %(AdditionalOptions)
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ inline=__inline;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;DISABLE_NTRU_ON_WINDOWS_BY_DEFAULT;OQS_RAND_DEFAULT_URANDOM_CHACHA20;OQS_KEX_DEFAULT_BCNS15;CONSTANT_TIME;WINDOWS;NDEBUG;_LIB;%(PreprocessorDefinitions)
+ false
+ $(SolutionDir)include
+ MultiThreadedDLL
+ true
+
+
+ Windows
+ true
+ true
+ dll.def
+
+
+ mkdir "$(SolutionDir)include\oqs"
+del /Q "$(SolutionDir)include\oqs\*.*"
+copy "$(SolutionDir)..\src\common\common.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\aes\aes.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\rand\rand.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\rand_urandom_chacha20\rand_urandom_chacha20.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\rand_urandom_aesctr\rand_urandom_aesctr.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\crypto\sha3\sha3.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex\kex.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_rlwe_bcns15\kex_rlwe_bcns15.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_rlwe_newhope\kex_rlwe_newhope.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_rlwe_msrln16\kex_rlwe_msrln16.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_lwe_frodo\kex_lwe_frodo.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_sidh_cln16\kex_sidh_cln16.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_code_mcbits\kex_code_mcbits.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_ntru\kex_ntru.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\kex_mlwe_kyber\kex_mlwe_kyber.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\sig\sig.h" "$(SolutionDir)include\oqs\"
+copy "$(SolutionDir)..\src\sig_picnic\sig_picnic.h" "$(SolutionDir)include\oqs\"
+
+
+
+ /ignore:4006 %(AdditionalOptions)
+
+
diff --git a/VisualStudio/oqs/oqs.vcxproj.filters b/VisualStudio/oqs/oqs.vcxproj.filters
index 5438b0070..2a27ca41a 100644
--- a/VisualStudio/oqs/oqs.vcxproj.filters
+++ b/VisualStudio/oqs/oqs.vcxproj.filters
@@ -25,9 +25,6 @@
KEX_Frodo
-
- KEX_NewHope
-
KEX_MSR_LN16
@@ -240,4 +237,7 @@
{18dd9adb-41b8-4058-a714-0a0d49db26ad}
+
+
+
\ No newline at end of file
diff --git a/VisualStudio/test_kex/test_kex.vcxproj b/VisualStudio/test_kex/test_kex.vcxproj
index f47fa642b..250ad1325 100644
--- a/VisualStudio/test_kex/test_kex.vcxproj
+++ b/VisualStudio/test_kex/test_kex.vcxproj
@@ -1,10 +1,26 @@
+
+ DebugDLL
+ Win32
+
+
+ DebugDLL
+ x64
+
Debug
Win32
+
+ ReleaseDLL
+ Win32
+
+
+ ReleaseDLL
+ x64
+
Release
Win32
@@ -31,6 +47,12 @@
v141
Unicode
+
+ Application
+ true
+ v141
+ Unicode
+
Application
false
@@ -38,12 +60,25 @@
true
Unicode
+
+ Application
+ false
+ v141
+ true
+ Unicode
+
Application
true
v141
Unicode
+
+ Application
+ true
+ v141
+ Unicode
+
Application
false
@@ -51,6 +86,13 @@
true
Unicode
+
+ Application
+ false
+ v141
+ true
+ Unicode
+
@@ -59,32 +101,60 @@
+
+
+
+
+
+
+
+
+
+
+
+
true
$(SolutionDir)$(Platform)\$(Configuration)\
$(Platform)\$(Configuration)\
+
+ true
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ $(Platform)\$(Configuration)\
+
true
+
+ true
+
false
$(SolutionDir)$(Platform)\$(Configuration)\
$(Platform)\$(Configuration)\
+
+ false
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ $(Platform)\$(Configuration)\
+
false
+
+ false
+
@@ -104,6 +174,25 @@
/ignore:4006 %(AdditionalOptions)
+
+
+
+
+ Level3
+ Disabled
+ _CRT_SECURE_NO_WARNINGS;WINDOWS;DISABLE_NTRU_ON_WINDOWS_BY_DEFAULT;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+ $(SolutionDir)include
+ MultiThreadedDebugDLL
+
+
+ Console
+ true
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;oqs.lib;%(AdditionalDependencies)
+ /ignore:4006 %(AdditionalOptions)
+
+
@@ -124,6 +213,26 @@
/ignore:4006 %(AdditionalOptions)
+
+
+
+
+ Level3
+ Disabled
+ _CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WINDOWS;DISABLE_NTRU_ON_WINDOWS_BY_DEFAULT;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+ $(SolutionDir)include
+ MultiThreadedDebugDLL
+ true
+
+
+ Console
+ true
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;oqs.lib;%(AdditionalDependencies)
+ /ignore:4006 %(AdditionalOptions)
+
+
Level3
@@ -147,6 +256,29 @@
/ignore:4006 %(AdditionalOptions)
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ _CRT_SECURE_NO_WARNINGS;WINDOWS;DISABLE_NTRU_ON_WINDOWS_BY_DEFAULT;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+ $(SolutionDir)include
+ MultiThreadedDLL
+
+
+ Console
+ true
+ true
+ true
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;oqs.lib;%(AdditionalDependencies)
+ /ignore:4006 %(AdditionalOptions)
+
+
Level3
@@ -171,6 +303,30 @@
/ignore:4006 %(AdditionalOptions)
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ _CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WINDOWS;DISABLE_NTRU_ON_WINDOWS_BY_DEFAULT;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+ $(SolutionDir)include
+ MultiThreadedDLL
+ true
+
+
+ Console
+ true
+ true
+ true
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;oqs.lib;%(AdditionalDependencies)
+ /ignore:4006 %(AdditionalOptions)
+
+
diff --git a/VisualStudio/test_rand/test_rand.vcxproj b/VisualStudio/test_rand/test_rand.vcxproj
index 4ec28666d..25701fdc6 100644
--- a/VisualStudio/test_rand/test_rand.vcxproj
+++ b/VisualStudio/test_rand/test_rand.vcxproj
@@ -1,10 +1,26 @@
+
+ DebugDLL
+ Win32
+
+
+ DebugDLL
+ x64
+
Debug
Win32
+
+ ReleaseDLL
+ Win32
+
+
+ ReleaseDLL
+ x64
+
Release
Win32
@@ -34,6 +50,12 @@
v141
Unicode
+
+ Application
+ true
+ v141
+ Unicode
+
Application
false
@@ -41,12 +63,25 @@
true
Unicode
+
+ Application
+ false
+ v141
+ true
+ Unicode
+
Application
true
v141
Unicode
+
+ Application
+ true
+ v141
+ Unicode
+
Application
false
@@ -54,6 +89,13 @@
true
Unicode
+
+ Application
+ false
+ v141
+ true
+ Unicode
+
@@ -62,32 +104,60 @@
+
+
+
+
+
+
+
+
+
+
+
+
true
$(SolutionDir)$(Platform)\$(Configuration)\
$(Platform)\$(Configuration)\
+
+ true
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ $(Platform)\$(Configuration)\
+
true
+
+ true
+
false
$(SolutionDir)$(Platform)\$(Configuration)\
$(Platform)\$(Configuration)\
+
+ false
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ $(Platform)\$(Configuration)\
+
false
+
+ false
+
@@ -107,6 +177,25 @@
/ignore:4006 %(AdditionalOptions)
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+ $(SolutionDir)include
+ MultiThreadedDebugDLL
+
+
+ Console
+ true
+ kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;oqs.lib;%(AdditionalDependencies)
+ $(SolutionDir)$(Platform)\$(Configuration)\;%(AdditionalLibraryDirectories)
+ /ignore:4006 %(AdditionalOptions)
+
+
@@ -127,6 +216,26 @@
/ignore:4006 %(AdditionalOptions)
+
+
+
+
+ Level3
+ Disabled
+ _CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+ $(SolutionDir)include
+ MultiThreadedDebugDLL
+ true
+
+
+ Console
+ true
+ kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;oqs.lib;%(AdditionalDependencies)
+ $(SolutionDir)$(Platform)\$(Configuration)\;%(AdditionalLibraryDirectories)
+ /ignore:4006 %(AdditionalOptions)
+
+
Level3
@@ -150,6 +259,29 @@
/ignore:4006 %(AdditionalOptions)
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+ $(SolutionDir)include
+ MultiThreadedDLL
+
+
+ Console
+ true
+ true
+ true
+ kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;oqs.lib;%(AdditionalDependencies)
+ $(SolutionDir)$(Platform)\$(Configuration)\;%(AdditionalLibraryDirectories)
+ /ignore:4006 %(AdditionalOptions)
+
+
Level3
@@ -174,6 +306,30 @@
/ignore:4006 %(AdditionalOptions)
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ _CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+ $(SolutionDir)include
+ MultiThreadedDLL
+ true
+
+
+ Console
+ true
+ true
+ true
+ kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;oqs.lib;%(AdditionalDependencies)
+ $(SolutionDir)$(Platform)\$(Configuration)\;%(AdditionalLibraryDirectories)
+ /ignore:4006 %(AdditionalOptions)
+
+
diff --git a/VisualStudio/test_sig/test_sig.vcxproj b/VisualStudio/test_sig/test_sig.vcxproj
index 5aaf39099..7bf1db505 100644
--- a/VisualStudio/test_sig/test_sig.vcxproj
+++ b/VisualStudio/test_sig/test_sig.vcxproj
@@ -1,10 +1,26 @@
+
+ DebugDLL
+ Win32
+
+
+ DebugDLL
+ x64
+
Debug
Win32
+
+ ReleaseDLL
+ Win32
+
+
+ ReleaseDLL
+ x64
+
Release
Win32
@@ -32,6 +48,12 @@
v141
Unicode
+
+ Application
+ true
+ v141
+ Unicode
+
Application
false
@@ -39,12 +61,25 @@
true
Unicode
+
+ Application
+ false
+ v141
+ true
+ Unicode
+
Application
true
v141
Unicode
+
+ Application
+ true
+ v141
+ Unicode
+
Application
false
@@ -52,6 +87,13 @@
true
Unicode
+
+ Application
+ false
+ v141
+ true
+ Unicode
+
@@ -60,28 +102,52 @@
+
+
+
+
+
+
+
+
+
+
+
+
false
+
+ false
+
true
+
+ true
+
true
+
+ true
+
false
+
+ false
+
Level3
@@ -104,6 +170,28 @@
/ignore:4006 %(AdditionalOptions)
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ _CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WINDOWS;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ $(SolutionDir)include
+ true
+ true
+
+
+ Console
+ true
+ true
+ kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;oqs.lib;%(AdditionalDependencies)
+ $(SolutionDir)..\src\sig_picnic\external\Picnic-master\VisualStudio\openssl\lib\;$(SolutionDir)..\src\sig_picnic\external\Picnic-master\VisualStudio\$(Platform)\$(Configuration)\;$(SolutionDir)$(Platform)\$(Configuration)\
+ /ignore:4006 %(AdditionalOptions)
+
+
@@ -121,6 +209,23 @@
/ignore:4006 %(AdditionalOptions)
+
+
+
+
+ Level3
+ Disabled
+ _CRT_SECURE_NO_WARNINGS;WINDOWS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ $(SolutionDir)include
+ true
+
+
+ Console
+ kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;oqs.lib;%(AdditionalDependencies)
+ $(SolutionDir)..\src\sig_picnic\external\Picnic-master\VisualStudio\openssl\lib\;$(SolutionDir)..\src\sig_picnic\external\Picnic-master\VisualStudio\$(Platform)\$(Configuration)\;$(SolutionDir)$(Platform)\$(Configuration)\
+ /ignore:4006 %(AdditionalOptions)
+
+
@@ -139,6 +244,24 @@
/ignore:4006 %(AdditionalOptions)
+
+
+
+
+ Level3
+ Disabled
+ _CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WINDOWS;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ $(SolutionDir)include
+ true
+ true
+
+
+ Console
+ kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;oqs.lib;%(AdditionalDependencies)
+ $(SolutionDir)..\src\sig_picnic\external\Picnic-master\VisualStudio\openssl\lib\;$(SolutionDir)..\src\sig_picnic\external\Picnic-master\VisualStudio\$(Platform)\$(Configuration)\;$(SolutionDir)$(Platform)\$(Configuration)\
+ /ignore:4006 %(AdditionalOptions)
+
+
Level3
@@ -160,6 +283,27 @@
/ignore:4006 %(AdditionalOptions)
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ _CRT_SECURE_NO_WARNINGS;WINDOWS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ $(SolutionDir)include
+ true
+
+
+ Console
+ true
+ true
+ kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;oqs.lib;%(AdditionalDependencies)
+ $(SolutionDir)..\src\sig_picnic\external\Picnic-master\VisualStudio\openssl\lib\;$(SolutionDir)..\src\sig_picnic\external\Picnic-master\VisualStudio\$(Platform)\$(Configuration)\;$(SolutionDir)$(Platform)\$(Configuration)\
+ /ignore:4006 %(AdditionalOptions)
+
+
diff --git a/src/kex_code_mcbits/kex_code_mcbits.c b/src/kex_code_mcbits/kex_code_mcbits.c
index 340e321f9..4b0564e78 100644
--- a/src/kex_code_mcbits/kex_code_mcbits.c
+++ b/src/kex_code_mcbits/kex_code_mcbits.c
@@ -1,3 +1,5 @@
+#ifdef ENABLE_CODE_MCBITS
+
#if defined(WINDOWS)
#define UNUSED
// __attribute__ not supported in VS, is there something else I should define?
@@ -146,3 +148,5 @@ void OQS_KEX_code_mcbits_free(OQS_KEX *k) {
}
free(k);
}
+
+#endif