MCPcopy Create free account
hub / github.com/acl-dev/acl / DetourGetSizeOfPayloads

Function DetourGetSizeOfPayloads

lib_fiber/cpp/src/detours/modules.cpp:750–774  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

748}
749
750DWORD WINAPI DetourGetSizeOfPayloads(_In_opt_ HMODULE hModule)
751{
752 PDETOUR_LOADED_BINARY pBinary = GetPayloadSectionFromModule(hModule);
753 if (pBinary == NULL) {
754 // Error set by GetPayloadSectionFromModule.
755 return 0;
756 }
757
758 __try {
759 DETOUR_SECTION_HEADER *pHeader = (DETOUR_SECTION_HEADER *)pBinary;
760 if (pHeader->cbHeaderSize < sizeof(DETOUR_SECTION_HEADER) ||
761 pHeader->nSignature != DETOUR_SECTION_HEADER_SIGNATURE) {
762
763 SetLastError(ERROR_INVALID_HANDLE);
764 return 0;
765 }
766 SetLastError(NO_ERROR);
767 return pHeader->cbDataSize;
768 }
769 __except(GetExceptionCode() == EXCEPTION_ACCESS_VIOLATION ?
770 EXCEPTION_EXECUTE_HANDLER : EXCEPTION_CONTINUE_SEARCH) {
771 SetLastError(ERROR_INVALID_HANDLE);
772 return 0;
773 }
774}
775
776_Writable_bytes_(*pcbData)
777_Readable_bytes_(*pcbData)

Callers

nothing calls this directly

Calls 1

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…