diff --git a/libs/libks/libks.vcxproj b/libs/libks/libks.vcxproj
index 5a82f7d0b5..ee02d02e99 100644
--- a/libs/libks/libks.vcxproj
+++ b/libs/libks/libks.vcxproj
@@ -74,6 +74,8 @@
true
$(Platform)\$(Configuration)\
$(SolutionDir)$(Platform)\$(Configuration)\
+ $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include;$(IncludePath)
+ $(SolutionDir)\openssl\lib;$(LibraryPath)
@@ -81,21 +83,27 @@
$(Platform)\$(Configuration)\
$(SolutionDir)$(Platform)\$(Configuration)\
+
+ $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include64;$(IncludePath)
+ $(SolutionDir)\openssl\lib64;$(LibraryPath)
+
- WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBKS_EXPORTS;%(PreprocessorDefinitions)
+ WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBKS_EXPORTS;CJSON_EXPORT_SYMBOLS;%(PreprocessorDefinitions)
MultiThreadedDebugDLL
EnableAllWarnings
ProgramDatabase
Disabled
%(AdditionalIncludeDirectories)
true
- true
+ false
+ 4711;4574;4100;4127;4668;4255;4706;4710;4820;4090
MachineX86
true
Windows
+ Rpcrt4.lib;Crypt32.lib;libsslMT.lib;libcryptoMT.lib;%(AdditionalDependencies)
@@ -119,15 +127,17 @@
%(AdditionalIncludeDirectories)
- WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBKS_EXPORTS;%(PreprocessorDefinitions)
+ WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBKS_EXPORTS;CJSON_EXPORT_SYMBOLS;%(PreprocessorDefinitions)
EditAndContinue
EnableAllWarnings
true
- true
+ false
+ 4711;4574;4100;4127;4668;4255;4706;4710;4820;4090
Windows
Debug
+ Rpcrt4.lib;Crypt32.lib;libsslMT.lib;libcryptoMT.lib;%(AdditionalDependencies)
@@ -143,7 +153,18 @@
+
+
+
+
+
+
+
+
+
+
+
@@ -155,27 +176,52 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
\ No newline at end of file
diff --git a/libs/libks/libks.vcxproj.filters b/libs/libks/libks.vcxproj.filters
index 0e995bcf93..630ca2aed3 100644
--- a/libs/libks/libks.vcxproj.filters
+++ b/libs/libks/libks.vcxproj.filters
@@ -69,6 +69,48 @@
Source Files
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
@@ -95,12 +137,6 @@
Header Files
-
- Header Files
-
-
- Header Files
-
Header Files
@@ -110,5 +146,71 @@
Header Files
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
-
+
\ No newline at end of file
diff --git a/libs/libks/src/include/ks_cJSON.h b/libs/libks/src/include/ks_cJSON.h
index 79dbb98157..37366f9e28 100644
--- a/libs/libks/src/include/ks_cJSON.h
+++ b/libs/libks/src/include/ks_cJSON.h
@@ -141,7 +141,7 @@ CJSON_PUBLIC(int) cJSON_GetArraySize(const cJSON *array);
CJSON_PUBLIC(cJSON *) cJSON_GetArrayItem(const cJSON *array, int item);
/* Get item "string" from object. Case insensitive. */
CJSON_PUBLIC(cJSON *) cJSON_GetObjectItem(const cJSON *object, const char *string);
-CJSON_PUBLIC(cJSON *) cJSON_GetObjectItemCaseSensitive(const cJSON *object, const char *string);
+CJSON_PUBLIC(cJSON *) cJSON_GetObjectItemCaseSensitive(const cJSON * const object, const char * const string);
CJSON_PUBLIC(int) cJSON_HasObjectItem(const cJSON *object, const char *string);
/* For analysing failed parses. This returns a pointer to the parse error. You'll probably need to look a few chars back to make sense of it. Defined when cJSON_Parse() returns 0. 0 when cJSON_Parse() succeeds. */
CJSON_PUBLIC(const char *) cJSON_GetErrorPtr(void);
diff --git a/libs/libks/src/include/ks_types.h b/libs/libks/src/include/ks_types.h
index f7e1aea07d..e50dc5aa21 100644
--- a/libs/libks/src/include/ks_types.h
+++ b/libs/libks/src/include/ks_types.h
@@ -73,6 +73,11 @@ KS_BEGIN_EXTERN_C
KS_POLL_ERROR = (1 << 2)
} ks_poll_t;
+#if defined(_MSC_VER)
+#include
+ typedef SSIZE_T ssize_t;
+#endif
+
typedef uint16_t ks_port_t;
typedef size_t ks_size_t;
typedef unsigned char ks_byte_t;
diff --git a/libs/libks/src/ks_rng.c b/libs/libks/src/ks_rng.c
index 78a08b0f97..ada0c36f87 100644
--- a/libs/libks/src/ks_rng.c
+++ b/libs/libks/src/ks_rng.c
@@ -57,7 +57,7 @@ KS_DECLARE(char *) ks_uuid_str(ks_pool_t *pool, uuid_t *uuid)
#ifdef __WINDOWS__
unsigned char * str;
UuidToStringA ( uuid, &str );
- uuidstr = ks_pstrdup(pool, str);
+ uuidstr = ks_pstrdup(pool, (const char *)str);
RpcStringFreeA ( &str );
#else
char str[37] = { 0 };
@@ -129,7 +129,7 @@ KS_DECLARE(size_t) ks_rng_seed_data(uint8_t *seed, size_t length)
}
#ifdef __WINDOWS__
if (crypt_provider) {
- if(!CryptGenRandom(crypt_provider, length, seed)) {
+ if(!CryptGenRandom(crypt_provider, (DWORD)length, seed)) {
return 0;
}
bytes = length;
@@ -156,11 +156,11 @@ KS_DECLARE(size_t) ks_rng_add_entropy(const uint8_t *buffer, size_t length)
}
if (buffer && length) {
- sha512_hash(buffer, length, &global_sha512);
+ sha512_hash(buffer, (unsigned long)length, &global_sha512);
}
if (len > 0) {
- sha512_hash(seed, len, &global_sha512);
+ sha512_hash(seed, (unsigned long)len, &global_sha512);
length += len;
}
diff --git a/libs/libks/src/ks_socket.c b/libs/libks/src/ks_socket.c
index 5c951ea956..62c79694bf 100644
--- a/libs/libks/src/ks_socket.c
+++ b/libs/libks/src/ks_socket.c
@@ -123,8 +123,8 @@ KS_DECLARE(ks_status_t) ks_socket_option(ks_socket_t socket, int option_name, ks
break;
case IPV6_V6ONLY:
#ifdef WIN32
-#warning make sure windows works like linux for IPV6 to IPV4 automapping stuff
- result = setsockopt(socket, SOL_IPV6, IPV6_V6ONLY, (char *)&opt, sizeof(opt));
+//#warning make sure windows works like linux for IPV6 to IPV4 automapping stuff
+ result = setsockopt(socket, IPPROTO_IPV6, IPV6_V6ONLY, (char *)&opt, sizeof(opt));
#else
result = setsockopt(socket, SOL_IPV6, IPV6_V6ONLY, &opt, sizeof(opt));
#endif
diff --git a/libs/libks/src/ks_thread.c b/libs/libks/src/ks_thread.c
index adb8b2163a..02d9fcf33d 100644
--- a/libs/libks/src/ks_thread.c
+++ b/libs/libks/src/ks_thread.c
@@ -43,7 +43,7 @@ KS_DECLARE(ks_pid_t) ks_thread_self_id(void)
{
#ifdef WIN32
return GetCurrentThreadId();
-#elseif gettid
+#elif gettid
return gettid();
#else
return syscall(SYS_gettid);
diff --git a/libs/libks/src/simclist.c b/libs/libks/src/simclist.c
index 0f9885af56..f7e797aa35 100755
--- a/libs/libks/src/simclist.c
+++ b/libs/libks/src/simclist.c
@@ -20,6 +20,7 @@
*/
/* SimCList implementation, version 1.6 */
+#include
#include
#include
@@ -30,7 +31,7 @@
#include
#include
#else
-#include
+//#include
#endif
#ifndef SIMCLIST_NO_DUMPRESTORE
/* includes for dump/restore */
diff --git a/libs/libks/test/testhash.c b/libs/libks/test/testhash.c
index c0987f28b9..65670cba1e 100644
--- a/libs/libks/test/testhash.c
+++ b/libs/libks/test/testhash.c
@@ -68,7 +68,7 @@ static void *test2_thread(ks_thread_t *thread, void *data)
int test2(void)
{
ks_thread_t *threads[MAX];
- int ttl = 5;
+ int ttl = 1;
int runs = 5;
ks_pool_t *pool;
ks_hash_t *hash;
@@ -120,7 +120,7 @@ int test2(void)
return 1;
}
-#include "sodium.h"
+//#include "sodium.h"
#define TEST3_SIZE 20
int test3(void)
{
diff --git a/libs/libks/test/testhash.vcxproj b/libs/libks/test/testhash.vcxproj
index c3bf783a68..fea6c4ba35 100644
--- a/libs/libks/test/testhash.vcxproj
+++ b/libs/libks/test/testhash.vcxproj
@@ -73,10 +73,14 @@
true
$(Platform)\$(Configuration)\$(ProjectName)\
$(SolutionDir)$(Platform)\$(Configuration)\
+ $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include;$(IncludePath)
+ $(SolutionDir)\openssl\lib;$(LibraryPath)
true
$(Platform)\$(Configuration)\$(ProjectName)\
+ $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include64;$(IncludePath)
+ $(SolutionDir)\openssl\lib64;$(LibraryPath)
false
@@ -96,6 +100,7 @@
_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
true
../src/include;.
+ 4090
Console
@@ -111,6 +116,7 @@
_CRT_SECURE_NO_WARNINGS;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
true
../src/include;.
+ 4090
Console
diff --git a/libs/libks/test/testpools.vcxproj b/libs/libks/test/testpools.vcxproj
index 76a40e4c16..43217d2f1a 100644
--- a/libs/libks/test/testpools.vcxproj
+++ b/libs/libks/test/testpools.vcxproj
@@ -73,10 +73,14 @@
true
$(Platform)\$(Configuration)\$(ProjectName)\
$(SolutionDir)$(Platform)\$(Configuration)\
+ $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include;$(IncludePath)
+ $(SolutionDir)\openssl\lib;$(LibraryPath)
true
$(Platform)\$(Configuration)\$(ProjectName)\
+ $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include64;$(IncludePath)
+ $(SolutionDir)\openssl\lib64;$(LibraryPath)
false
diff --git a/libs/libks/test/testq.vcxproj b/libs/libks/test/testq.vcxproj
index 8bc112dec0..6a52508ef2 100644
--- a/libs/libks/test/testq.vcxproj
+++ b/libs/libks/test/testq.vcxproj
@@ -73,10 +73,14 @@
true
$(Platform)\$(Configuration)\$(ProjectName)\
$(SolutionDir)$(Platform)\$(Configuration)\
+ $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include;$(IncludePath)
+ $(SolutionDir)\openssl\lib;$(LibraryPath)
true
$(Platform)\$(Configuration)\$(ProjectName)\
+ $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include64;$(IncludePath)
+ $(SolutionDir)\openssl\lib64;$(LibraryPath)
false
diff --git a/libs/libks/test/testsock.vcxproj b/libs/libks/test/testsock.vcxproj
index b7eefcdeba..0aeb971961 100644
--- a/libs/libks/test/testsock.vcxproj
+++ b/libs/libks/test/testsock.vcxproj
@@ -73,10 +73,14 @@
true
$(Platform)\$(Configuration)\$(ProjectName)\
$(SolutionDir)$(Platform)\$(Configuration)\
+ $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include;$(IncludePath)
+ $(SolutionDir)\openssl\lib;$(LibraryPath)
true
$(Platform)\$(Configuration)\$(ProjectName)\
+ $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include64;$(IncludePath)
+ $(SolutionDir)\openssl\lib64;$(LibraryPath)
false
diff --git a/libs/libks/test/testthreadmutex.vcxproj b/libs/libks/test/testthreadmutex.vcxproj
index a2b548c104..5196a3c525 100644
--- a/libs/libks/test/testthreadmutex.vcxproj
+++ b/libs/libks/test/testthreadmutex.vcxproj
@@ -73,10 +73,14 @@
true
$(Platform)\$(Configuration)\$(ProjectName)\
$(SolutionDir)$(Platform)\$(Configuration)\
+ $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include;$(IncludePath)
+ $(SolutionDir)\openssl\lib;$(LibraryPath)
true
$(Platform)\$(Configuration)\$(ProjectName)\
+ $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include64;$(IncludePath)
+ $(SolutionDir)\openssl\lib64;$(LibraryPath)
false
diff --git a/libs/libks/test/testtime.vcxproj b/libs/libks/test/testtime.vcxproj
index c667f35f7d..da3828c007 100644
--- a/libs/libks/test/testtime.vcxproj
+++ b/libs/libks/test/testtime.vcxproj
@@ -73,10 +73,14 @@
true
$(Platform)\$(Configuration)\$(ProjectName)\
$(SolutionDir)$(Platform)\$(Configuration)\
+ $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include;$(IncludePath)
+ $(SolutionDir)\openssl\lib;$(LibraryPath)
true
$(Platform)\$(Configuration)\$(ProjectName)\
+ $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include64;$(IncludePath)
+ $(SolutionDir)\openssl\lib64;$(LibraryPath)
false