diff --git a/CHANGELOG.md b/CHANGELOG.md index 6506f86b..544dfc46 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,16 @@ This project adheres to [Semantic Versioning](http://semver.org/). + + + +## [1.8.3 / 5.63.3] - 2023-04-05 + +### Fixed +- fixed issue with WFP support and driver verifier + + + ## [1.8.2a / 5.63.2] - 2023-04-02 ### Changed diff --git a/Sandboxie/common/my_version.h b/Sandboxie/common/my_version.h index 93a3e0a5..4fe46e86 100644 --- a/Sandboxie/common/my_version.h +++ b/Sandboxie/common/my_version.h @@ -21,8 +21,8 @@ #ifndef _MY_VERSION_H #define _MY_VERSION_H -#define MY_VERSION_BINARY 5,63,2 -#define MY_VERSION_STRING "5.63.2" +#define MY_VERSION_BINARY 5,63,3 +#define MY_VERSION_STRING "5.63.3" #define MY_ABI_VERSION 0x56000 // These #defines are used by either Resource Compiler or NSIS installer diff --git a/Sandboxie/core/drv/wfp.c b/Sandboxie/core/drv/wfp.c index 6a5509c3..9a4fe077 100644 --- a/Sandboxie/core/drv/wfp.c +++ b/Sandboxie/core/drv/wfp.c @@ -273,11 +273,15 @@ _FX BOOLEAN WFP_Load(void) if (FwpmBfeStateGet() == FWPM_SERVICE_RUNNING) { + KeEnterCriticalRegion(); + ExAcquireResourceSharedLite(WFP_InitLock, TRUE); WFP_Install_Callbacks(); ExReleaseResourceLite(WFP_InitLock); + + KeLeaveCriticalRegion(); } else DbgPrint("Sbie WFP is not ready\r\n"); @@ -303,12 +307,16 @@ _FX void WFP_Unload(void) if (WFP_InitLock) { + KeEnterCriticalRegion(); + ExAcquireResourceSharedLite(WFP_InitLock, TRUE); WFP_Uninstall_Callbacks(); ExReleaseResourceLite(WFP_InitLock); + KeLeaveCriticalRegion(); + Mem_FreeLockResource(&WFP_InitLock); WFP_InitLock = NULL; } @@ -345,6 +353,8 @@ _FX void WFP_Unload(void) _FX void WFP_state_changed(_Inout_ void* context, _In_ FWPM_SERVICE_STATE newState) { + KeEnterCriticalRegion(); + ExAcquireResourceSharedLite(WFP_InitLock, TRUE); if (newState == FWPM_SERVICE_STOP_PENDING) @@ -353,6 +363,8 @@ _FX void WFP_state_changed(_Inout_ void* context, _In_ FWPM_SERVICE_STATE newSta WFP_Install_Callbacks(); ExReleaseResourceLite(WFP_InitLock); + + KeLeaveCriticalRegion(); } diff --git a/SandboxiePlus/SandMan/OnlineUpdater.cpp b/SandboxiePlus/SandMan/OnlineUpdater.cpp index 6c56dbf9..40d459af 100644 --- a/SandboxiePlus/SandMan/OnlineUpdater.cpp +++ b/SandboxiePlus/SandMan/OnlineUpdater.cpp @@ -177,7 +177,7 @@ void COnlineUpdater::GetUpdates(QObject* receiver, const char* member, const QVa Query.addQueryItem("channel", ReleaseChannel); } - if(Params.contains("manual")) Query.addQueryItem("auto", Params["manual"].toBool() ? "0" : "1"); + Query.addQueryItem("auto", Params["manual"].toBool() ? "0" : "1"); //QString Test = Query.toString(); diff --git a/SandboxiePlus/SandMan/SandMan.vcxproj b/SandboxiePlus/SandMan/SandMan.vcxproj index 7a7aa49f..f0143011 100644 --- a/SandboxiePlus/SandMan/SandMan.vcxproj +++ b/SandboxiePlus/SandMan/SandMan.vcxproj @@ -318,8 +318,10 @@ + + diff --git a/SandboxiePlus/SandMan/SandMan.vcxproj.filters b/SandboxiePlus/SandMan/SandMan.vcxproj.filters index e67d8bc4..fe0a57a1 100644 --- a/SandboxiePlus/SandMan/SandMan.vcxproj.filters +++ b/SandboxiePlus/SandMan/SandMan.vcxproj.filters @@ -183,8 +183,11 @@ Helpers + + Wizards + - Helpers + Wizards @@ -289,6 +292,9 @@ Wizards + + Wizards + diff --git a/SandboxiePlus/version.h b/SandboxiePlus/version.h index fe209cd7..380e6680 100644 --- a/SandboxiePlus/version.h +++ b/SandboxiePlus/version.h @@ -2,8 +2,8 @@ #define VERSION_MJR 1 #define VERSION_MIN 8 -#define VERSION_REV 2 -#define VERSION_UPD 1 +#define VERSION_REV 3 +#define VERSION_UPD 0 #ifndef STR #define STR2(X) #X