fixes
This commit is contained in:
parent
d7758071f6
commit
c31249a2a8
12
CHANGELOG.md
12
CHANGELOG.md
|
@ -3,6 +3,18 @@ All notable changes to this project will be documented in this file.
|
|||
This project adheres to [Semantic Versioning](http://semver.org/).
|
||||
|
||||
|
||||
## [1.0.1 / 5.55.1] - 2021-12-03
|
||||
|
||||
### Changed
|
||||
- rolled back changed to "OpenClsid=..." handling
|
||||
|
||||
### Fixed
|
||||
- issue with read only paths introduced in 1.0.0
|
||||
- fixed BSOD issue introduced in the 1.0.0 build
|
||||
|
||||
|
||||
|
||||
|
||||
## [1.0.0 / 5.55.0] - 2021-11-17
|
||||
|
||||
### Added
|
||||
|
|
|
@ -414,9 +414,6 @@ _FX void Com_LoadClsidList(const WCHAR* setting, GUID** pClsids, ULONG* pNumClsi
|
|||
_FX BOOLEAN SbieDll_IsOpenClsid(
|
||||
REFCLSID rclsid, ULONG clsctx, const WCHAR *BoxName)
|
||||
{
|
||||
ULONG index;
|
||||
GUID *guid;
|
||||
|
||||
static const GUID CLSID_WinMgmt = {
|
||||
0x8BC3F05E, 0xD86B, 0x11D0,
|
||||
{ 0xA0, 0x75, 0x00, 0xC0, 0x4F, 0xB6, 0x88, 0x20 } };
|
||||
|
@ -443,6 +440,9 @@ _FX BOOLEAN SbieDll_IsOpenClsid(
|
|||
|
||||
if (clsctx & CLSCTX_LOCAL_SERVER) {
|
||||
|
||||
ULONG index;
|
||||
GUID *guid;
|
||||
|
||||
//
|
||||
// check against list of built-in CLSID exclusions
|
||||
//
|
||||
|
@ -455,26 +455,25 @@ _FX BOOLEAN SbieDll_IsOpenClsid(
|
|||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
//
|
||||
// initialize list of user-configured CLSID exclusions
|
||||
//
|
||||
|
||||
static const WCHAR* setting = L"OpenClsid";
|
||||
Com_LoadClsidList(setting , &Com_OpenClsids, &Com_NumOpenClsids, BoxName);
|
||||
|
||||
//
|
||||
// check against list of user-configured CLSID exclusions
|
||||
//
|
||||
|
||||
for (index = 0; index < Com_NumOpenClsids; ++index) {
|
||||
guid = &Com_OpenClsids[index];
|
||||
if (memcmp(guid, rclsid, sizeof(GUID)) == 0 /*|| memcmp(guid, &CLSID_Null, sizeof(GUID)) == 0*/)
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// initialize list of user-configured CLSID exclusions
|
||||
//
|
||||
|
||||
static const WCHAR* setting = L"OpenClsid";
|
||||
Com_LoadClsidList(setting , &Com_OpenClsids, &Com_NumOpenClsids, BoxName);
|
||||
|
||||
//
|
||||
// check against list of user-configured CLSID exclusions
|
||||
//
|
||||
|
||||
for (index = 0; index < Com_NumOpenClsids; ++index) {
|
||||
guid = &Com_OpenClsids[index];
|
||||
if (memcmp(guid, rclsid, sizeof(GUID)) == 0 /*|| memcmp(guid, &CLSID_Null, sizeof(GUID)) == 0*/)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
if (Com_IsFirewallClsid(rclsid, BoxName))
|
||||
return TRUE;
|
||||
|
||||
|
|
|
@ -173,7 +173,7 @@ _FX BOOLEAN Dll_InitPathList2(
|
|||
#ifdef USE_MATCH_PATH_EX
|
||||
if (ok && read) {
|
||||
path_code = (path_code & 0xFF00) | 'r';
|
||||
ok = Dll_InitPathList3(Dll_PathListAnchor->pool, path_code, write);
|
||||
ok = Dll_InitPathList3(Dll_PathListAnchor->pool, path_code, read);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
|
@ -1900,7 +1900,7 @@ _FX NTSTATUS File_Api_Rename(PROCESS *proc, ULONG64 *parms)
|
|||
ExAcquireResourceSharedLite(proc->file_lock, TRUE);
|
||||
|
||||
#ifdef USE_MATCH_PATH_EX
|
||||
mp_flags = Process_MatchPathEx(proc, path, path_len, L'f',
|
||||
mp_flags = Process_MatchPathEx(proc, path, wcslen(path), L'f',
|
||||
&proc->normal_file_paths, &proc->open_file_paths, &proc->closed_file_paths,
|
||||
&proc->read_file_paths, &proc->write_file_paths, NULL);
|
||||
|
||||
|
|
Loading…
Reference in New Issue