Browse Source

v4.41-9782-beta

dnobori 2 years ago
parent
commit
bf23fe0000
48 changed files with 198 additions and 60 deletions
  1. 1 1
      src/BuildFiles/Library/OpenSSL_Build_ID.txt
  2. BIN
      src/BuildFiles/Library/Win32_Debug/libeay32.lib
  3. BIN
      src/BuildFiles/Library/Win32_Debug/libintelaes.lib
  4. BIN
      src/BuildFiles/Library/Win32_Debug/ssleay32.lib
  5. BIN
      src/BuildFiles/Library/Win32_Debug/zlib.lib
  6. BIN
      src/BuildFiles/Library/Win32_Release/libeay32.lib
  7. BIN
      src/BuildFiles/Library/Win32_Release/ssleay32.lib
  8. BIN
      src/BuildFiles/Library/x64_Debug/libeay32.lib
  9. BIN
      src/BuildFiles/Library/x64_Debug/libintelaes.lib
  10. BIN
      src/BuildFiles/Library/x64_Debug/ssleay32.lib
  11. BIN
      src/BuildFiles/Library/x64_Debug/zlib.lib
  12. BIN
      src/BuildFiles/Library/x64_Release/libeay32.lib
  13. BIN
      src/BuildFiles/Library/x64_Release/ssleay32.lib
  14. 1 1
      src/BuildUtil/VpnBuilderConfig.cs
  15. 10 4
      src/Cedar/CM.c
  16. 5 2
      src/Cedar/Cedar.c
  17. 7 7
      src/Cedar/Cedar.h
  18. 1 1
      src/Cedar/Command.c
  19. 7 1
      src/Cedar/Session.c
  20. 3 3
      src/CurrentBuild.txt
  21. 56 0
      src/Mayaqua/Encrypt.c
  22. 3 0
      src/Mayaqua/Encrypt.h
  23. 5 4
      src/Mayaqua/MayaType.h
  24. 4 4
      src/Mayaqua/Mayaqua.vcproj
  25. 21 0
      src/Mayaqua/Microsoft.c
  26. 1 0
      src/Mayaqua/Microsoft.h
  27. 1 0
      src/Mayaqua/Network.c
  28. 5 3
      src/Mayaqua/OS.c
  29. 3 0
      src/Mayaqua/Secure.h
  30. 13 5
      src/Mayaqua/Win32.c
  31. 3 2
      src/Mayaqua/win32_inc/openssl/bio.h
  32. 2 1
      src/Mayaqua/win32_inc/openssl/bnerr.h
  33. 2 1
      src/Mayaqua/win32_inc/openssl/configuration.h
  34. 4 4
      src/Mayaqua/win32_inc/openssl/core_names.h
  35. 2 0
      src/Mayaqua/win32_inc/openssl/crypto.h
  36. 2 1
      src/Mayaqua/win32_inc/openssl/ecerr.h
  37. 13 1
      src/Mayaqua/win32_inc/openssl/err.h
  38. 5 5
      src/Mayaqua/win32_inc/openssl/opensslv.h
  39. 11 0
      src/Mayaqua/win32_inc/openssl/ssl.h
  40. 4 4
      src/Mayaqua/win32_inc/openssl/x509.h
  41. 0 1
      src/bin/hamcore/strtable_cn.stb
  42. 0 1
      src/bin/hamcore/strtable_en.stb
  43. 0 0
      src/bin/hamcore/strtable_ja.stb
  44. BIN
      src/bin/vpnweb.cab
  45. BIN
      src/bin/vpnweb.ocx
  46. 1 1
      src/vpnweb/vpnweb.h
  47. 1 1
      src/vpnweb/vpnweb_i.c
  48. 1 1
      src/vpnweb/vpnweb_p.c

+ 1 - 1
src/BuildFiles/Library/OpenSSL_Build_ID.txt

@@ -1 +1 @@
-crosslib_win32_v2_220323_01
+crosslib_win32_v3_221102_01

BIN
src/BuildFiles/Library/Win32_Debug/libeay32.lib


BIN
src/BuildFiles/Library/Win32_Debug/libintelaes.lib


BIN
src/BuildFiles/Library/Win32_Debug/ssleay32.lib


BIN
src/BuildFiles/Library/Win32_Debug/zlib.lib


BIN
src/BuildFiles/Library/Win32_Release/libeay32.lib


BIN
src/BuildFiles/Library/Win32_Release/ssleay32.lib


BIN
src/BuildFiles/Library/x64_Debug/libeay32.lib


BIN
src/BuildFiles/Library/x64_Debug/libintelaes.lib


BIN
src/BuildFiles/Library/x64_Debug/ssleay32.lib


BIN
src/BuildFiles/Library/x64_Debug/zlib.lib


BIN
src/BuildFiles/Library/x64_Release/libeay32.lib


BIN
src/BuildFiles/Library/x64_Release/ssleay32.lib


+ 1 - 1
src/BuildUtil/VpnBuilderConfig.cs

@@ -421,7 +421,7 @@ namespace BuildUtil
 	{
 		// Windows
 		public static readonly OS Windows = new OS("windows", "Windows",
-			"Windows 98 / 98 SE / ME / NT 4.0 SP6a / 2000 SP4 / XP SP2, SP3 / Vista SP1, SP2 / 7 SP1 / 8 / 8.1 / 10 / Server 2003 SP2 / Server 2008 SP1, SP2 / Hyper-V Server 2008 / Server 2008 R2 SP1 / Hyper-V Server 2008 R2 / Server 2012 / Hyper-V Server 2012 / Server 2012 R2 / Hyper-V Server 2012 R2 / Server 2016 / Server 2019",
+			"Windows 98 / 98 SE / ME / NT 4.0 SP6a / 2000 SP4 / XP SP2, SP3 / Vista SP1, SP2 / 7 SP1 / 8 / 8.1 / 10 / 11 / Server 2003 SP2 / Server 2008 SP1, SP2 / Hyper-V Server 2008 / Server 2008 R2 SP1 / Hyper-V Server 2008 R2 / Server 2012 / Hyper-V Server 2012 / Server 2012 R2 / Hyper-V Server 2012 R2 / Server 2016 / Server 2019 / Server 2022",
 			new Cpu[]
 			{
 				CpuList.intel,

+ 10 - 4
src/Cedar/CM.c

@@ -526,7 +526,7 @@ void CmEasyDlgOnKey(HWND hWnd, CM_EASY_DLG *d, bool ctrl, bool alt, UINT key)
 			break;
 		case 'O':
 			// Option settings
-			Command(hWnd, CMD_TRAFFIC);
+			Command(hWnd, CMD_OPTION);
 			break;
 		case 'R':
 			// Certificate management
@@ -4387,7 +4387,10 @@ UINT CmMainWindowProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam, void *p
 		switch (wParam)
 		{
 		case 1:
-			CmSetForegroundProcessToCnService();
+			if (MsIsWindows11() == false)
+			{
+				CmSetForegroundProcessToCnService();
+			}
 			break;
 		case 2:
 			CmPollingTray(hWnd);
@@ -5164,7 +5167,7 @@ void CmOnKey(HWND hWnd, bool ctrl, bool alt, UINT key)
 			break;
 		case 'O':
 			// Option settings
-			Command(hWnd, CMD_TRAFFIC);
+			Command(hWnd, CMD_OPTION);
 			break;
 		case 'R':
 			// Certificate management
@@ -11184,7 +11187,10 @@ void CmMainWindowOnInit(HWND hWnd)
 	CmInitNotifyClientThread();
 
 	// Timer setting
-	SetTimer(hWnd, 1, 128, NULL);
+	if (MsIsWindows11() == false)
+	{
+		SetTimer(hWnd, 1, 128, NULL);
+	}
 	SetTimer(hWnd, 6, 5000, NULL);
 
 	// Initialize the task tray

+ 5 - 2
src/Cedar/Cedar.c

@@ -1680,6 +1680,7 @@ CEDAR *NewCedar(X *server_x, K *server_k)
 	char tmp[MAX_SIZE];
 	char tmp2[MAX_SIZE];
 	char *beta_str;
+	char ssl_lib_ver[MAX_PATH] = CLEAN;
 
 	CedarForceLink();
 
@@ -1798,8 +1799,10 @@ CEDAR *NewCedar(X *server_x, K *server_k)
 
 	c->VerString = CopyStr(tmp);
 
-	Format(tmp, sizeof(tmp), "Compiled %04u/%02u/%02u %02u:%02u:%02u by %s at %s",
-		BUILD_DATE_Y, BUILD_DATE_M, BUILD_DATE_D, BUILD_DATE_HO, BUILD_DATE_MI, BUILD_DATE_SE, BUILDER_NAME, BUILD_PLACE);
+	GetSslLibVersion(ssl_lib_ver, sizeof(ssl_lib_ver));
+
+	Format(tmp, sizeof(tmp), "Compiled %04u/%02u/%02u %02u:%02u:%02u by %s at %s with %s",
+		BUILD_DATE_Y, BUILD_DATE_M, BUILD_DATE_D, BUILD_DATE_HO, BUILD_DATE_MI, BUILD_DATE_SE, BUILDER_NAME, BUILD_PLACE, ssl_lib_ver);
 
 	c->BuildInfo = CopyStr(tmp);
 

+ 7 - 7
src/Cedar/Cedar.h

@@ -126,10 +126,10 @@
 
 
 // Version number
-#define	CEDAR_VER					439
+#define	CEDAR_VER					441
 
 // Build Number
-#define	CEDAR_BUILD					9772
+#define	CEDAR_BUILD					9782
 
 // Beta number
 //#define	BETA_NUMBER					3
@@ -149,11 +149,11 @@
 
 // Specifies the build date
 #define	BUILD_DATE_Y		2022
-#define	BUILD_DATE_M		4
-#define	BUILD_DATE_D		26
-#define	BUILD_DATE_HO		17
-#define	BUILD_DATE_MI		40
-#define	BUILD_DATE_SE		1
+#define	BUILD_DATE_M		11
+#define	BUILD_DATE_D		17
+#define	BUILD_DATE_HO		16
+#define	BUILD_DATE_MI		15
+#define	BUILD_DATE_SE		51
 
 // Tolerable time difference
 #define	ALLOW_TIMESTAMP_DIFF		(UINT64)(3 * 24 * 60 * 60 * 1000)

+ 1 - 1
src/Cedar/Command.c

@@ -23417,7 +23417,7 @@ void CmdPrintAbout(CONSOLE *c)
 	GetExeName(exe, sizeof(exe));
 
 	UniFormat(tmp, sizeof(tmp), _UU("CMD_VPNCMD_ABOUT"),
-		cedar->VerString, cedar->BuildInfo);
+		cedar->VerString, cedar->BuildInfo, BUILD_DATE_Y);
 
 	c->Write(c, tmp);
 

+ 7 - 1
src/Cedar/Session.c

@@ -1730,7 +1730,13 @@ void ClientThread(THREAD *t, void *param)
 				StrCpy(p.ServerName, sizeof(p.ServerName), s->ClientOption->Hostname);
 			}
 
-			p.RetryIntervalSec = s->RetryInterval / 1000;
+			if(s->CurrentRetryCount < s->ClientOption->NumRetry){
+				p.RetryIntervalSec = s->RetryInterval / 1000;
+			}else{
+				// Disable the retry timeout if retries exceeds the limit
+				p.RetryIntervalSec = 0;
+			}
+
 			p.Type = s->ClientAuth->AuthType;
 
 			// Display the password re-entry dialog

+ 3 - 3
src/CurrentBuild.txt

@@ -1,4 +1,4 @@
-BUILD_NUMBER 9772
-VERSION 439
+BUILD_NUMBER 9782
+VERSION 441
 BUILD_NAME beta
-BUILD_DATE 20220426_174001
+BUILD_DATE 20221117_161551

+ 56 - 0
src/Mayaqua/Encrypt.c

@@ -5066,6 +5066,8 @@ void InitCryptLibrary()
 	ossl_provider_default = OSSL_PROVIDER_load(NULL, "default");
 #endif
 
+	GetSslLibVersion(NULL, 0);
+
 	ERR_load_crypto_strings();
 	SSL_load_error_strings();
 
@@ -6947,6 +6949,60 @@ crypto_aead_chacha20poly1305_ietf_encrypt(unsigned char *c,
 	return ret;
 }
 
+static char ssl_version_cache[MAX_PATH] = CLEAN;
+
+void GetSslLibVersion(char *str, UINT size)
+{
+	if (IsEmptyStr(ssl_version_cache))
+	{
+		GetSslLibVersion_Internal(ssl_version_cache, sizeof(ssl_version_cache));
+	}
+
+	StrCpy(str, size, ssl_version_cache);
+}
+
+void GetSslLibVersion_Internal(char *str, UINT size)
+{
+	char tmp[MAX_PATH] = CLEAN;
+	UINT verint = 0;
+	UINT ver_major = 0;
+	UINT ver_minor = 0;
+	UINT ver_fix = 0;
+	UINT ver_patch = 0;
+	if (str == NULL)
+	{
+		return;
+	}
+
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
+	Format(tmp, sizeof(tmp), "OpenSSL <= 1.0.2");
+#else	// OPENSSL_VERSION_NUMBER
+	verint = OpenSSL_version_num();
+
+	ver_major = (verint >> 28) & 0x0F;
+	ver_minor = (verint >> 20) & 0xFF;
+	ver_fix = (verint >> 12) & 0xFF;
+	ver_patch = (verint >> 4) & 0xFF;
+
+	if (ver_major >= 3)
+	{
+		Format(tmp, sizeof(tmp), "OpenSSL %u.%u.%u", ver_major, ver_minor, ver_patch);
+	}
+	else
+	{
+		char c = 0;
+		if (ver_patch >= 1)
+		{
+			c = 'a' + (ver_patch - 1);
+		}
+		Format(tmp, sizeof(tmp), "OpenSSL %u.%u.%u%c", ver_major, ver_minor, ver_fix, c);
+	}
+
+#endif	// OPENSSL_VERSION_NUMBER
+
+	StrCpy(str, size, tmp);
+}
+
 // RFC 8439: ChaCha20-Poly1305-IETF Encryption with AEAD
 void Aead_ChaCha20Poly1305_Ietf_Encrypt(void *dst, void *src, UINT src_size,
 										void *key, void *nonce, void *aad, UINT aad_size)

+ 3 - 0
src/Mayaqua/Encrypt.h

@@ -665,6 +665,9 @@ bool Aead_ChaCha20Poly1305_Ietf_IsOpenSSL();
 void Aead_ChaCha20Poly1305_Ietf_Test();
 
 
+void GetSslLibVersion(char *str, UINT size);
+void GetSslLibVersion_Internal(char *str, UINT size);
+
 
 
 

+ 5 - 4
src/Mayaqua/MayaType.h

@@ -136,7 +136,7 @@ typedef struct x509_crl_st X509_CRL;
 #define	BUF_SIZE			512
 
 // Support Windows OS list
-#define	SUPPORTED_WINDOWS_LIST		"Windows 98 / 98 SE / ME / NT 4.0 SP6a / 2000 SP4 / XP SP2, SP3 / Vista SP1, SP2 / 7 SP1 / 8 / 8.1 / 10 / Server 2003 SP2 / Server 2008 SP1, SP2 / Hyper-V Server 2008 / Server 2008 R2 SP1 / Hyper-V Server 2008 R2 / Server 2012 / Hyper-V Server 2012 / Server 2012 R2 / Hyper-V Server 2012 R2 / Server 2016 / Server 2019"
+#define	SUPPORTED_WINDOWS_LIST		"Windows 98 / 98 SE / ME / NT 4.0 SP6a / 2000 SP4 / XP SP2, SP3 / Vista SP1, SP2 / 7 SP1 / 8 / 8.1 / 10 / 11 / Server 2003 SP2 / Server 2008 SP1, SP2 / Hyper-V Server 2008 / Server 2008 R2 SP1 / Hyper-V Server 2008 R2 / Server 2012 / Hyper-V Server 2012 / Server 2012 R2 / Hyper-V Server 2012 R2 / Server 2016 / Server 2019 / Server 2022"
 
 // Infinite
 #ifndef	WINDOWS_H
@@ -343,9 +343,10 @@ typedef UINT_PTR SOCKET;
 #define	OSTYPE_WINDOWS_81						2701	// Windows 8.1
 #define	OSTYPE_WINDOWS_SERVER_81				2711	// Windows Server 2012 R2
 #define	OSTYPE_WINDOWS_10						2702	// Windows 10
-#define	OSTYPE_WINDOWS_SERVER_10				2712	// Windows Server 10
-#define	OSTYPE_WINDOWS_11						2800	// Windows 11 or later
-#define	OSTYPE_WINDOWS_SERVER_11				2810	// Windows Server 11 or later
+#define	OSTYPE_WINDOWS_SERVER_10				2712	// Windows Server 2016 / 2019 / 2022
+#define	OSTYPE_WINDOWS_11						2800	// Windows 11
+#define	OSTYPE_WINDOWS_12						2801	// Windows 12 or later
+#define	OSTYPE_WINDOWS_SERVER_11				2810	// newer than Windows Server 2022
 #define	OSTYPE_UNIX_UNKNOWN						3000	// Unknown UNIX
 #define	OSTYPE_LINUX							3100	// Linux
 #define	OSTYPE_SOLARIS							3200	// Solaris

+ 4 - 4
src/Mayaqua/Mayaqua.vcproj

@@ -71,7 +71,7 @@
 				Name="VCLibrarianTool"
 				AdditionalOptions="/IGNORE:4006,4221"
 				AdditionalDependencies="libeay32.lib ssleay32.lib zlib.lib libintelaes.lib"
-				AdditionalLibraryDirectories="$(SolutionDir)BuildFiles\Library\$(PlatformName)_$(ConfigurationName)"
+				AdditionalLibraryDirectories="$(SolutionDir)BuildFiles\Library\$(PlatformName)_Release"
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -142,7 +142,7 @@
 				Name="VCLibrarianTool"
 				AdditionalOptions="/IGNORE:4006,4221"
 				AdditionalDependencies="libeay32.lib ssleay32.lib zlib.lib libintelaes.lib"
-				AdditionalLibraryDirectories="$(SolutionDir)BuildFiles\Library\$(PlatformName)_$(ConfigurationName)"
+				AdditionalLibraryDirectories="$(SolutionDir)BuildFiles\Library\$(PlatformName)_Release"
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -216,7 +216,7 @@
 				Name="VCLibrarianTool"
 				AdditionalOptions="/IGNORE:4006,4221"
 				AdditionalDependencies="libeay32.lib ssleay32.lib zlib.lib libintelaes.lib"
-				AdditionalLibraryDirectories="$(SolutionDir)BuildFiles\Library\$(PlatformName)_$(ConfigurationName)"
+				AdditionalLibraryDirectories="$(SolutionDir)BuildFiles\Library\$(PlatformName)_Release"
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -291,7 +291,7 @@
 				Name="VCLibrarianTool"
 				AdditionalOptions="/IGNORE:4006,4221"
 				AdditionalDependencies="libeay32.lib ssleay32.lib zlib.lib libintelaes.lib"
-				AdditionalLibraryDirectories="$(SolutionDir)BuildFiles\Library\$(PlatformName)_$(ConfigurationName)"
+				AdditionalLibraryDirectories="$(SolutionDir)BuildFiles\Library\$(PlatformName)_Release"
 			/>
 			<Tool
 				Name="VCALinkTool"

+ 21 - 0
src/Mayaqua/Microsoft.c

@@ -9184,6 +9184,27 @@ bool MsIsWindows10()
 	return false;
 }
 
+// Determine whether it's Windows 11 or later
+bool MsIsWindows11()
+{
+	OS_INFO *info = GetOsInfo();
+
+	if (info == NULL)
+	{
+		return false;
+	}
+
+	if (OS_IS_WINDOWS_NT(info->OsType))
+	{
+		if (GET_KETA(info->OsType, 100) >= 8)
+		{
+			return true;
+		}
+	}
+
+	return false;
+}
+
 // Determine whether it's Windows 8.1 or later
 bool MsIsWindows81()
 {

+ 1 - 0
src/Mayaqua/Microsoft.h

@@ -1010,6 +1010,7 @@ bool MsIsIA64();
 void *MsDisableWow64FileSystemRedirection();
 void MsRestoreWow64FileSystemRedirection(void *p);
 void MsSetWow64FileSystemRedirectionEnable(bool enable);
+bool MsIsWindows11();
 bool MsIsWindows10();
 bool MsIsWindows81();
 bool MsIsWindows8();

+ 1 - 0
src/Mayaqua/Network.c

@@ -22873,6 +22873,7 @@ bool HttpSendNotImplemented(SOCK *s, char *method, char *target, char *version)
 	ReplaceStri(str, str_size, str, "$METHOD$", method);
 
 	// VERSION
+	ReplaceUnsafeCharInTarget(version);
 	ReplaceStri(str, str_size, str, "$VERSION$", version);
 
 	// Transmission

+ 5 - 3
src/Mayaqua/OS.c

@@ -191,11 +191,13 @@ char *OsTypeToStr(UINT type)
 	case OSTYPE_WINDOWS_10:
 		return "Windows 10\0\n";
 	case OSTYPE_WINDOWS_SERVER_10:
-		return "Windows Server 2016\0\n";
+		return "Windows Server 2016 / 2019 / 2022\0\n";
 	case OSTYPE_WINDOWS_11:
-		return "Newer than Windows 10\0\n";
+		return "Windows 11\0\n";
+	case OSTYPE_WINDOWS_12:
+		return "Windows 12 or later\0\n";
 	case OSTYPE_WINDOWS_SERVER_11:
-		return "Newer than Windows Server 2016\0\n";
+		return "Newer than Windows Server 2022\0\n";
 	case OSTYPE_UNIX_UNKNOWN:
 		return "UNIX System\0\n";
 	case OSTYPE_LINUX:

+ 3 - 0
src/Mayaqua/Secure.h

@@ -302,6 +302,9 @@ SECURE_DEVICE SupportedList[] =
 	{22,	SECURE_USB_TOKEN,	"CryptoID",				"Longmai Technology",	"cryptoide_pkcs11.dll"},
 	{23,	SECURE_USB_TOKEN,	"RuToken",				"Aktiv Co.",			"rtPKCS11.dll"},
 	{24,	SECURE_IC_CARD,		"JPKI IC Card (64-bit)",	"Japanese Government",	"JPKIPKCS1164.DLL"},
+	{25,	SECURE_USB_TOKEN,	"SafeNet",				"SafeNet",				"IDPrimePKCS1164.dll "},
+	{26,	SECURE_USB_TOKEN,	"OpenSC",				"OpenSC",				"opensc-pkcs11.dll"},
+	{27,	SECURE_USB_TOKEN,	"SHALO AUTH",			"AXELL CORPORATION",	"slpkcs11-vc.dll"},
 };
 
 #ifdef	OS_WIN32

+ 13 - 5
src/Mayaqua/Win32.c

@@ -1442,12 +1442,20 @@ UINT Win32GetOsType()
 				{
 					if (os.wProductType == VER_NT_WORKSTATION)
 					{
-						// Windows 10
-						return OSTYPE_WINDOWS_10;
+						if (os.dwBuildNumber < 21996)
+						{
+							// Windows 10
+							return OSTYPE_WINDOWS_10;
+						}
+						else
+						{
+							// Windows 11
+							return OSTYPE_WINDOWS_11;
+						}
 					}
 					else
 					{
-						// Windows Server 10
+						// Windows Server 2016 / 2019 / 2022
 						return OSTYPE_WINDOWS_SERVER_10;
 					}
 				}
@@ -1455,8 +1463,8 @@ UINT Win32GetOsType()
 				{
 					if (os.wProductType == VER_NT_WORKSTATION)
 					{
-						// Windows 11 or later
-						return OSTYPE_WINDOWS_11;
+						// Windows 12 or later
+						return OSTYPE_WINDOWS_12;
 					}
 					else
 					{

+ 3 - 2
src/Mayaqua/win32_inc/openssl/bio.h

@@ -173,9 +173,9 @@ extern "C" {
 
 # ifndef OPENSSL_NO_KTLS
 #  define BIO_get_ktls_send(b)         \
-     BIO_ctrl(b, BIO_CTRL_GET_KTLS_SEND, 0, NULL)
+     (BIO_ctrl(b, BIO_CTRL_GET_KTLS_SEND, 0, NULL) > 0)
 #  define BIO_get_ktls_recv(b)         \
-     BIO_ctrl(b, BIO_CTRL_GET_KTLS_RECV, 0, NULL)
+     (BIO_ctrl(b, BIO_CTRL_GET_KTLS_RECV, 0, NULL) > 0)
 # else
 #  define BIO_get_ktls_send(b)  (0)
 #  define BIO_get_ktls_recv(b)  (0)
@@ -819,6 +819,7 @@ void BIO_copy_next_retry(BIO *b);
 
 # define ossl_bio__attr__(x)
 # if defined(__GNUC__) && defined(__STDC_VERSION__) \
+    && !defined(__MINGW32__) && !defined(__MINGW64__) \
     && !defined(__APPLE__)
     /*
      * Because we support the 'z' modifier, which made its appearance in C99,

+ 2 - 1
src/Mayaqua/win32_inc/openssl/bnerr.h

@@ -1,6 +1,6 @@
 /*
  * Generated by util/mkerr.pl DO NOT EDIT
- * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
  *
  * Licensed under the Apache License 2.0 (the "License").  You may not use
  * this file except in compliance with the License.  You can obtain a copy
@@ -36,6 +36,7 @@
 # define BN_R_NOT_A_SQUARE                                111
 # define BN_R_NOT_INITIALIZED                             107
 # define BN_R_NO_INVERSE                                  108
+# define BN_R_NO_PRIME_CANDIDATE                          121
 # define BN_R_NO_SOLUTION                                 116
 # define BN_R_NO_SUITABLE_DIGEST                          120
 # define BN_R_PRIVATE_KEY_TOO_LARGE                       117

+ 2 - 1
src/Mayaqua/win32_inc/openssl/configuration.h

@@ -1,6 +1,7 @@
 /*
  * WARNING: do not edit!
- * Generated by makefile from include\openssl\configuration.h.in
+ * Generated by configdata.pm from Configurations\common0.tmpl, Configurations\windows-makefile.tmpl
+ * via makefile.in
  *
  * Copyright 2016-2021 The OpenSSL Project Authors. All Rights Reserved.
  *

+ 4 - 4
src/Mayaqua/win32_inc/openssl/core_names.h

@@ -1,5 +1,5 @@
 /*
- * Copyright 2019-2021 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 2019-2022 The OpenSSL Project Authors. All Rights Reserved.
  *
  * Licensed under the Apache License 2.0 (the "License").  You may not use
  * this file except in compliance with the License.  You can obtain a copy
@@ -21,9 +21,9 @@ extern "C" {
 #define OSSL_PROV_PARAM_CORE_MODULE_FILENAME "module-filename" /* utf8_ptr */
 
 /* Well known parameter names that Providers can define */
-#define OSSL_PROV_PARAM_NAME            "name"                /* utf8_string */
-#define OSSL_PROV_PARAM_VERSION         "version"             /* utf8_string */
-#define OSSL_PROV_PARAM_BUILDINFO       "buildinfo"           /* utf8_string */
+#define OSSL_PROV_PARAM_NAME            "name"                /* utf8_ptr */
+#define OSSL_PROV_PARAM_VERSION         "version"             /* utf8_ptr */
+#define OSSL_PROV_PARAM_BUILDINFO       "buildinfo"           /* utf8_ptr */
 #define OSSL_PROV_PARAM_STATUS          "status"              /* uint */
 #define OSSL_PROV_PARAM_SECURITY_CHECKS "security-checks"     /* uint */
 

+ 2 - 0
src/Mayaqua/win32_inc/openssl/crypto.h

@@ -132,6 +132,8 @@ int OPENSSL_hexstr2buf_ex(unsigned char *buf, size_t buf_n, size_t *buflen,
                           const char *str, const char sep);
 unsigned char *OPENSSL_hexstr2buf(const char *str, long *buflen);
 int OPENSSL_hexchar2int(unsigned char c);
+int OPENSSL_strcasecmp(const char *s1, const char *s2);
+int OPENSSL_strncasecmp(const char *s1, const char *s2, size_t n);
 
 # define OPENSSL_MALLOC_MAX_NELEMS(type)  (((1U<<(sizeof(int)*8-1))-1)/sizeof(type))
 

+ 2 - 1
src/Mayaqua/win32_inc/openssl/ecerr.h

@@ -1,6 +1,6 @@
 /*
  * Generated by util/mkerr.pl DO NOT EDIT
- * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
  *
  * Licensed under the Apache License 2.0 (the "License").  You may not use
  * this file except in compliance with the License.  You can obtain a copy
@@ -35,6 +35,7 @@
 #  define EC_R_DECODE_ERROR                                142
 #  define EC_R_DISCRIMINANT_IS_ZERO                        118
 #  define EC_R_EC_GROUP_NEW_BY_NAME_FAILURE                119
+#  define EC_R_EXPLICIT_PARAMS_NOT_SUPPORTED               127
 #  define EC_R_FAILED_MAKING_PUBLIC_KEY                    166
 #  define EC_R_FIELD_TOO_LARGE                             143
 #  define EC_R_GF2M_NOT_SUPPORTED                          147

+ 13 - 1
src/Mayaqua/win32_inc/openssl/err.h

@@ -1,5 +1,5 @@
 /*
- * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
  *
  * Licensed under the Apache License 2.0 (the "License").  You may not use
  * this file except in compliance with the License.  You can obtain a copy
@@ -323,15 +323,27 @@ static ossl_unused ossl_inline int ERR_COMMON_ERROR(unsigned long errcode)
 # define ERR_R_DSA_LIB          (ERR_LIB_DSA/* 10 */ | ERR_RFLAG_COMMON)
 # define ERR_R_X509_LIB         (ERR_LIB_X509/* 11 */ | ERR_RFLAG_COMMON)
 # define ERR_R_ASN1_LIB         (ERR_LIB_ASN1/* 13 */ | ERR_RFLAG_COMMON)
+# define ERR_R_CONF_LIB         (ERR_LIB_CONF/* 14 */ | ERR_RFLAG_COMMON)
 # define ERR_R_CRYPTO_LIB       (ERR_LIB_CRYPTO/* 15 */ | ERR_RFLAG_COMMON)
 # define ERR_R_EC_LIB           (ERR_LIB_EC/* 16 */ | ERR_RFLAG_COMMON)
+# define ERR_R_SSL_LIB          (ERR_LIB_SSL/* 20 */ | ERR_RFLAG_COMMON)
 # define ERR_R_BIO_LIB          (ERR_LIB_BIO/* 32 */ | ERR_RFLAG_COMMON)
 # define ERR_R_PKCS7_LIB        (ERR_LIB_PKCS7/* 33 */ | ERR_RFLAG_COMMON)
 # define ERR_R_X509V3_LIB       (ERR_LIB_X509V3/* 34 */ | ERR_RFLAG_COMMON)
+# define ERR_R_PKCS12_LIB       (ERR_LIB_PKCS12/* 35 */ | ERR_RFLAG_COMMON)
+# define ERR_R_RAND_LIB         (ERR_LIB_RAND/* 36 */ | ERR_RFLAG_COMMON)
+# define ERR_R_DSO_LIB          (ERR_LIB_DSO/* 37 */ | ERR_RFLAG_COMMON)
 # define ERR_R_ENGINE_LIB       (ERR_LIB_ENGINE/* 38 */ | ERR_RFLAG_COMMON)
 # define ERR_R_UI_LIB           (ERR_LIB_UI/* 40 */ | ERR_RFLAG_COMMON)
 # define ERR_R_ECDSA_LIB        (ERR_LIB_ECDSA/* 42 */ | ERR_RFLAG_COMMON)
 # define ERR_R_OSSL_STORE_LIB   (ERR_LIB_OSSL_STORE/* 44 */ | ERR_RFLAG_COMMON)
+# define ERR_R_CMS_LIB          (ERR_LIB_CMS/* 46 */ | ERR_RFLAG_COMMON)
+# define ERR_R_TS_LIB           (ERR_LIB_TS/* 47 */ | ERR_RFLAG_COMMON)
+# define ERR_R_CT_LIB           (ERR_LIB_CT/* 50 */ | ERR_RFLAG_COMMON)
+# define ERR_R_PROV_LIB         (ERR_LIB_PROV/* 57 */ | ERR_RFLAG_COMMON)
+# define ERR_R_ESS_LIB          (ERR_LIB_ESS/* 54 */ | ERR_RFLAG_COMMON)
+# define ERR_R_CMP_LIB          (ERR_LIB_CMP/* 58 */ | ERR_RFLAG_COMMON)
+# define ERR_R_OSSL_ENCODER_LIB (ERR_LIB_OSSL_ENCODER/* 59 */ | ERR_RFLAG_COMMON)
 # define ERR_R_OSSL_DECODER_LIB (ERR_LIB_OSSL_DECODER/* 60 */ | ERR_RFLAG_COMMON)
 
 /* Other common error codes, range 256..2^ERR_RFLAGS_OFFSET-1 */

+ 5 - 5
src/Mayaqua/win32_inc/openssl/opensslv.h

@@ -29,7 +29,7 @@ extern "C" {
  */
 # define OPENSSL_VERSION_MAJOR  3
 # define OPENSSL_VERSION_MINOR  0
-# define OPENSSL_VERSION_PATCH  2
+# define OPENSSL_VERSION_PATCH  7
 
 /*
  * Additional version information
@@ -74,21 +74,21 @@ extern "C" {
  * longer variant with OPENSSL_VERSION_PRE_RELEASE_STR and
  * OPENSSL_VERSION_BUILD_METADATA_STR appended.
  */
-# define OPENSSL_VERSION_STR "3.0.2"
-# define OPENSSL_FULL_VERSION_STR "3.0.2"
+# define OPENSSL_VERSION_STR "3.0.7"
+# define OPENSSL_FULL_VERSION_STR "3.0.7"
 
 /*
  * SECTION 3: ADDITIONAL METADATA
  *
  * These strings are defined separately to allow them to be parsable.
  */
-# define OPENSSL_RELEASE_DATE "15 Mar 2022"
+# define OPENSSL_RELEASE_DATE "1 Nov 2022"
 
 /*
  * SECTION 4: BACKWARD COMPATIBILITY
  */
 
-# define OPENSSL_VERSION_TEXT "OpenSSL 3.0.2 15 Mar 2022"
+# define OPENSSL_VERSION_TEXT "OpenSSL 3.0.7 1 Nov 2022"
 
 /* Synthesize OPENSSL_VERSION_NUMBER with the layout 0xMNN00PPSL */
 # ifdef OPENSSL_VERSION_PRE_RELEASE

+ 11 - 0
src/Mayaqua/win32_inc/openssl/ssl.h

@@ -1381,6 +1381,8 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION)
 # define SSL_CTRL_GET_TMP_KEY                    133
 # define SSL_CTRL_GET_NEGOTIATED_GROUP           134
 # define SSL_CTRL_SET_RETRY_VERIFY               136
+# define SSL_CTRL_GET_VERIFY_CERT_STORE          137
+# define SSL_CTRL_GET_CHAIN_CERT_STORE           138
 # define SSL_CERT_SET_FIRST                      1
 # define SSL_CERT_SET_NEXT                       2
 # define SSL_CERT_SET_SERVER                     3
@@ -1442,10 +1444,14 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION)
         SSL_CTX_ctrl(ctx,SSL_CTRL_SET_VERIFY_CERT_STORE,0,(char *)(st))
 # define SSL_CTX_set1_verify_cert_store(ctx,st) \
         SSL_CTX_ctrl(ctx,SSL_CTRL_SET_VERIFY_CERT_STORE,1,(char *)(st))
+# define SSL_CTX_get0_verify_cert_store(ctx,st) \
+        SSL_CTX_ctrl(ctx,SSL_CTRL_GET_VERIFY_CERT_STORE,0,(char *)(st))
 # define SSL_CTX_set0_chain_cert_store(ctx,st) \
         SSL_CTX_ctrl(ctx,SSL_CTRL_SET_CHAIN_CERT_STORE,0,(char *)(st))
 # define SSL_CTX_set1_chain_cert_store(ctx,st) \
         SSL_CTX_ctrl(ctx,SSL_CTRL_SET_CHAIN_CERT_STORE,1,(char *)(st))
+# define SSL_CTX_get0_chain_cert_store(ctx,st) \
+        SSL_CTX_ctrl(ctx,SSL_CTRL_GET_CHAIN_CERT_STORE,0,(char *)(st))
 # define SSL_set0_chain(s,sk) \
         SSL_ctrl(s,SSL_CTRL_CHAIN,0,(char *)(sk))
 # define SSL_set1_chain(s,sk) \
@@ -1468,10 +1474,15 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION)
         SSL_ctrl(s,SSL_CTRL_SET_VERIFY_CERT_STORE,0,(char *)(st))
 # define SSL_set1_verify_cert_store(s,st) \
         SSL_ctrl(s,SSL_CTRL_SET_VERIFY_CERT_STORE,1,(char *)(st))
+#define SSL_get0_verify_cert_store(s,st) \
+        SSL_ctrl(s,SSL_CTRL_GET_VERIFY_CERT_STORE,0,(char *)(st))
 # define SSL_set0_chain_cert_store(s,st) \
         SSL_ctrl(s,SSL_CTRL_SET_CHAIN_CERT_STORE,0,(char *)(st))
 # define SSL_set1_chain_cert_store(s,st) \
         SSL_ctrl(s,SSL_CTRL_SET_CHAIN_CERT_STORE,1,(char *)(st))
+#define SSL_get0_chain_cert_store(s,st) \
+        SSL_ctrl(s,SSL_CTRL_GET_CHAIN_CERT_STORE,0,(char *)(st))
+
 # define SSL_get1_groups(s, glist) \
         SSL_ctrl(s,SSL_CTRL_GET_GROUPS,0,(int*)(glist))
 # define SSL_CTX_set1_groups(ctx, glist, glistlen) \

+ 4 - 4
src/Mayaqua/win32_inc/openssl/x509.h

@@ -2,7 +2,7 @@
  * WARNING: do not edit!
  * Generated by makefile from include\openssl\x509.h.in
  *
- * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
  * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
  *
  * Licensed under the Apache License 2.0 (the "License").  You may not use
@@ -552,11 +552,11 @@ int X509_NAME_digest(const X509_NAME *data, const EVP_MD *type,
 X509 *X509_load_http(const char *url, BIO *bio, BIO *rbio, int timeout);
 X509_CRL *X509_CRL_load_http(const char *url, BIO *bio, BIO *rbio, int timeout);
 # ifndef OPENSSL_NO_DEPRECATED_3_0
-#  include <openssl/ocsp.h> /* OCSP_REQ_CTX_nbio_d2i */
+#  include <openssl/http.h> /* OSSL_HTTP_REQ_CTX_nbio_d2i */
 #  define X509_http_nbio(rctx, pcert) \
-      OCSP_REQ_CTX_nbio_d2i(rctx, pcert, ASN1_ITEM_rptr(X509))
+      OSSL_HTTP_REQ_CTX_nbio_d2i(rctx, pcert, ASN1_ITEM_rptr(X509))
 #  define X509_CRL_http_nbio(rctx, pcrl) \
-      OCSP_REQ_CTX_nbio_d2i(rctx, pcrl, ASN1_ITEM_rptr(X509_CRL))
+      OSSL_HTTP_REQ_CTX_nbio_d2i(rctx, pcrl, ASN1_ITEM_rptr(X509_CRL))
 # endif
 
 # ifndef OPENSSL_NO_STDIO

File diff suppressed because it is too large
+ 0 - 1
src/bin/hamcore/strtable_cn.stb


File diff suppressed because it is too large
+ 0 - 1
src/bin/hamcore/strtable_en.stb


File diff suppressed because it is too large
+ 0 - 0
src/bin/hamcore/strtable_ja.stb


BIN
src/bin/vpnweb.cab


BIN
src/bin/vpnweb.ocx


+ 1 - 1
src/vpnweb/vpnweb.h

@@ -4,7 +4,7 @@
 
 
  /* File created by MIDL compiler version 7.00.0500 */
-/* at Tue Apr 26 17:40:18 2022
+/* at Thu Nov 17 16:16:08 2022
  */
 /* Compiler settings for .\vpnweb.idl:
     Oicf, W1, Zp8, env=Win32 (32b run)

+ 1 - 1
src/vpnweb/vpnweb_i.c

@@ -6,7 +6,7 @@
 
 
  /* File created by MIDL compiler version 7.00.0500 */
-/* at Tue Apr 26 17:40:18 2022
+/* at Thu Nov 17 16:16:08 2022
  */
 /* Compiler settings for .\vpnweb.idl:
     Oicf, W1, Zp8, env=Win32 (32b run)

+ 1 - 1
src/vpnweb/vpnweb_p.c

@@ -4,7 +4,7 @@
 
 
  /* File created by MIDL compiler version 7.00.0500 */
-/* at Tue Apr 26 17:40:18 2022
+/* at Thu Nov 17 16:16:08 2022
  */
 /* Compiler settings for .\vpnweb.idl:
     Oicf, W1, Zp8, env=Win32 (32b run)

Some files were not shown because too many files changed in this diff