diff options
author | pg9182 <96569817+pg9182@users.noreply.github.com> | 2022-08-08 06:12:11 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-08 11:12:11 +0100 |
commit | 5e7668c2cd7ef9d017536f1e2e4ec89708f5b74f (patch) | |
tree | 6c55b909fd258251c238bfad9caf83113fd88f33 /NorthstarDedicatedTest/ExploitFixes.cpp | |
parent | 286cea5f6280e568f5cb4c953d93993c98625ce4 (diff) | |
download | NorthstarLauncher-5e7668c2cd7ef9d017536f1e2e4ec89708f5b74f.tar.gz NorthstarLauncher-5e7668c2cd7ef9d017536f1e2e4ec89708f5b74f.zip |
Fix most clang/mingw issues (#226)
- Fix include case.
- Replace MSVC-specific align with standard alignas.
- Type fixes.
- Delete operator noexcept.
- A few other minor issues.
- clang-format everything.
- Use c++20 instead of c++17.
- Rewrite ERROR macro for launcher_wsock32_proxy.
- Use a plain ifstream for the audio.cpp wavStream.
Note: When compiling with clang, you'll need -municode.
Related to #212.
Diffstat (limited to 'NorthstarDedicatedTest/ExploitFixes.cpp')
-rw-r--r-- | NorthstarDedicatedTest/ExploitFixes.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/NorthstarDedicatedTest/ExploitFixes.cpp b/NorthstarDedicatedTest/ExploitFixes.cpp index 2f4e2b5c..31fa349a 100644 --- a/NorthstarDedicatedTest/ExploitFixes.cpp +++ b/NorthstarDedicatedTest/ExploitFixes.cpp @@ -204,7 +204,7 @@ KHOOK(ReadUsercmd, ("server.dll", "4C 89 44 24 ? 53 55 56 57"), void, __fastcall oReadUsercmd(buf, pCmd_move, pCmd_from); // Now let's make sure the CMD we read isnt messed up to prevent numerous exploits (including server crashing) - struct __declspec(align(4)) SV_CUserCmd + struct alignas(4) SV_CUserCmd { DWORD command_number; DWORD tick_count; @@ -291,7 +291,11 @@ KHOOK( static void* targetRetAddr = NSMem::PatternScan("engine.dll", "84 C0 75 2C 49 8B 16"); +#ifdef _MSC_VER if (_ReturnAddress() == targetRetAddr) +#else + if (__builtin_return_address(0) == targetRetAddr) +#endif { if (!ExploitFixes_UTF8Parser::CheckValid(a1, a2, strData)) { @@ -546,4 +550,4 @@ void ExploitFixes::LoadCallback_Full(HMODULE baseAddress) HookEnabler hook; ENABLER_CREATEHOOK(hook, (char*)baseAddress + 0x2a8a50, &GetEntByIndexHook, reinterpret_cast<LPVOID*>(&GetEntByIndex)); -}
\ No newline at end of file +} |