MCPcopy Create free account
hub / github.com/LiteLoaderQQNT/QQNTFileVerifyPatch / SetFileALLAccessPrems

Function SetFileALLAccessPrems

HijackMethod/dllmain.cpp:176–208  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

174}
175
176bool SetFileALLAccessPrems(const wchar_t* filePath)
177{
178 BOOL bSuccess = TRUE;
179 EXPLICIT_ACCESS ea;
180 PACL pNewDacl = NULL;
181 PACL pOldDacl = NULL;
182 const wchar_t UserAccount[MAX_PATH] = L"Users";
183 do
184 {
185 if (ERROR_SUCCESS != GetNamedSecurityInfo((LPTSTR)filePath, SE_FILE_OBJECT, DACL_SECURITY_INFORMATION, NULL, NULL, &pOldDacl, NULL, NULL))
186 {
187 bSuccess = FALSE;
188 break;
189
190 }
191 ::BuildExplicitAccessWithName(&ea, (LPTSTR)UserAccount, GENERIC_ALL, GRANT_ACCESS, SUB_CONTAINERS_AND_OBJECTS_INHERIT);
192 if (ERROR_SUCCESS != ::SetEntriesInAcl(1, &ea, pOldDacl, &pNewDacl))
193 {
194 bSuccess = FALSE;
195 break;
196 }
197
198 if (ERROR_SUCCESS != ::SetNamedSecurityInfo((LPTSTR)filePath, SE_FILE_OBJECT, DACL_SECURITY_INFORMATION, NULL, NULL, pNewDacl, NULL))
199 {
200 bSuccess = FALSE;
201 }
202 } while (FALSE);
203 if (NULL != pNewDacl)
204 {
205 ::LocalFree(pNewDacl);
206 }
207 return bSuccess;
208}
209
210HANDLE WINAPI Hk_CreateFileW(
211 _In_ LPCWSTR lpFileName,

Callers 1

Hk_CreateFileWFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected