#include #include #include #include uint32_t utils_file_crc32c(const char *filePath) { HANDLE file = CreateFileA(filePath, FILE_READ_ACCESS, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); if (!file) { msg_err_a("Could not open file: %s", filePath); } LARGE_INTEGER fileSize; GetFileSizeEx(file, &fileSize); HANDLE hMap = CreateFileMappingA(file, NULL, PAGE_READONLY, 0, 0, NULL); char *map = MapViewOfFile(hMap, FILE_MAP_READ, 0, 0, 0); if (!map) { msg_err_a("Could not create file mapping for %s", filePath); } uint32_t crc = crc32c(0, (unsigned char*)map, fileSize.QuadPart); UnmapViewOfFile(map); CloseHandle(hMap); CloseHandle(file); return crc; } char utils_env_enabled(const char *env) { char *envText = getenv(env); return envText && *envText; }