diff options
author | BobTheBob9 <for.oliver.kirkham@gmail.com> | 2023-01-04 18:08:13 +0000 |
---|---|---|
committer | BobTheBob9 <for.oliver.kirkham@gmail.com> | 2023-01-04 18:08:13 +0000 |
commit | e9f8a34dc3ca736f307cf195390aee7c8f5cb456 (patch) | |
tree | e65d1c2b1888895baf65bbde73e0a1a02cbb091a | |
parent | 6c45c7e94634c340019d12615b7eae8f3c0f49b3 (diff) | |
parent | 4fb1ae07d8f078e7abde99900c6a8286148a380a (diff) | |
download | NorthstarLauncher-e9f8a34dc3ca736f307cf195390aee7c8f5cb456.tar.gz NorthstarLauncher-e9f8a34dc3ca736f307cf195390aee7c8f5cb456.zip |
Merge remote-tracking branch 'origin/main' into experimental-bots-pr
-rw-r--r-- | NorthstarDLL/NorthstarDLL.vcxproj | 973 | ||||
-rw-r--r-- | NorthstarDLL/NorthstarDLL.vcxproj.filters | 2251 | ||||
-rw-r--r-- | NorthstarDLL/client/audio.cpp (renamed from NorthstarDLL/audio.cpp) | 4 | ||||
-rw-r--r-- | NorthstarDLL/client/audio.h (renamed from NorthstarDLL/audio.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/client/chatcommand.cpp (renamed from NorthstarDLL/chatcommand.cpp) | 4 | ||||
-rw-r--r-- | NorthstarDLL/client/clientauthhooks.cpp (renamed from NorthstarDLL/clientauthhooks.cpp) | 6 | ||||
-rw-r--r-- | NorthstarDLL/client/clientruihooks.cpp (renamed from NorthstarDLL/clientruihooks.cpp) | 2 | ||||
-rw-r--r-- | NorthstarDLL/client/clientvideooverrides.cpp (renamed from NorthstarDLL/clientvideooverrides.cpp) | 2 | ||||
-rw-r--r-- | NorthstarDLL/client/debugoverlay.cpp (renamed from NorthstarDLL/debugoverlay.cpp) | 6 | ||||
-rw-r--r-- | NorthstarDLL/client/demofixes.cpp (renamed from NorthstarDLL/demofixes.cpp) | 2 | ||||
-rw-r--r-- | NorthstarDLL/client/diskvmtfixes.cpp (renamed from NorthstarDLL/diskvmtfixes.cpp) | 32 | ||||
-rw-r--r-- | NorthstarDLL/client/languagehooks.cpp (renamed from NorthstarDLL/languagehooks.cpp) | 2 | ||||
-rw-r--r-- | NorthstarDLL/client/latencyflex.cpp (renamed from NorthstarDLL/latencyflex.cpp) | 2 | ||||
-rw-r--r-- | NorthstarDLL/client/localchatwriter.cpp (renamed from NorthstarDLL/localchatwriter.cpp) | 0 | ||||
-rw-r--r-- | NorthstarDLL/client/localchatwriter.h (renamed from NorthstarDLL/localchatwriter.h) | 2 | ||||
-rw-r--r-- | NorthstarDLL/client/modlocalisation.cpp (renamed from NorthstarDLL/modlocalisation.cpp) | 2 | ||||
-rw-r--r-- | NorthstarDLL/client/r2client.cpp (renamed from NorthstarDLL/r2client.cpp) | 0 | ||||
-rw-r--r-- | NorthstarDLL/client/r2client.h (renamed from NorthstarDLL/r2client.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/client/rejectconnectionfixes.cpp (renamed from NorthstarDLL/rejectconnectionfixes.cpp) | 7 | ||||
-rw-r--r-- | NorthstarDLL/config/profile.cpp (renamed from NorthstarDLL/nsprefix.cpp) | 4 | ||||
-rw-r--r-- | NorthstarDLL/config/profile.h (renamed from NorthstarDLL/nsprefix.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/core/convar/concommand.cpp (renamed from NorthstarDLL/concommand.cpp) | 2 | ||||
-rw-r--r-- | NorthstarDLL/core/convar/concommand.h (renamed from NorthstarDLL/concommand.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/core/convar/convar.cpp (renamed from NorthstarDLL/convar.cpp) | 44 | ||||
-rw-r--r-- | NorthstarDLL/core/convar/convar.h (renamed from NorthstarDLL/convar.h) | 6 | ||||
-rw-r--r-- | NorthstarDLL/core/convar/cvar.cpp (renamed from NorthstarDLL/cvar.cpp) | 0 | ||||
-rw-r--r-- | NorthstarDLL/core/convar/cvar.h (renamed from NorthstarDLL/cvar.h) | 1 | ||||
-rw-r--r-- | NorthstarDLL/core/filesystem/filesystem.cpp (renamed from NorthstarDLL/filesystem.cpp) | 4 | ||||
-rw-r--r-- | NorthstarDLL/core/filesystem/filesystem.h (renamed from NorthstarDLL/filesystem.h) | 2 | ||||
-rw-r--r-- | NorthstarDLL/core/filesystem/rpakfilesystem.cpp (renamed from NorthstarDLL/rpakfilesystem.cpp) | 6 | ||||
-rw-r--r-- | NorthstarDLL/core/filesystem/rpakfilesystem.h (renamed from NorthstarDLL/rpakfilesystem.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/core/hooks.cpp (renamed from NorthstarDLL/hooks.cpp) | 2 | ||||
-rw-r--r-- | NorthstarDLL/core/hooks.h (renamed from NorthstarDLL/hooks.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/core/macros.h | 19 | ||||
-rw-r--r-- | NorthstarDLL/core/math/bitbuf.h (renamed from NorthstarDLL/bitbuf.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/core/math/bits.cpp (renamed from NorthstarDLL/bits.cpp) | 0 | ||||
-rw-r--r-- | NorthstarDLL/core/math/bits.h (renamed from NorthstarDLL/bits.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/core/math/color.cpp (renamed from NorthstarDLL/color.cpp) | 0 | ||||
-rw-r--r-- | NorthstarDLL/core/math/color.h (renamed from NorthstarDLL/color.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/core/math/vector.h (renamed from NorthstarDLL/vector.h) | 104 | ||||
-rw-r--r-- | NorthstarDLL/core/memalloc.cpp (renamed from NorthstarDLL/memalloc.cpp) | 4 | ||||
-rw-r--r-- | NorthstarDLL/core/memalloc.h (renamed from NorthstarDLL/memalloc.h) | 2 | ||||
-rw-r--r-- | NorthstarDLL/core/memory.cpp (renamed from NorthstarDLL/memory.cpp) | 4 | ||||
-rw-r--r-- | NorthstarDLL/core/memory.h (renamed from NorthstarDLL/memory.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/core/sourceinterface.cpp (renamed from NorthstarDLL/sourceinterface.cpp) | 2 | ||||
-rw-r--r-- | NorthstarDLL/core/sourceinterface.h (renamed from NorthstarDLL/sourceinterface.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/core/structs.h (renamed from NorthstarDLL/structs.h) | 5 | ||||
-rw-r--r-- | NorthstarDLL/core/tier0.cpp (renamed from NorthstarDLL/tier0.cpp) | 0 | ||||
-rw-r--r-- | NorthstarDLL/core/tier0.h (renamed from NorthstarDLL/tier0.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/dedicated/dedicated.cpp (renamed from NorthstarDLL/dedicated.cpp) | 12 | ||||
-rw-r--r-- | NorthstarDLL/dedicated/dedicated.h (renamed from NorthstarDLL/dedicated.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/dedicated/dedicatedmaterialsystem.cpp (renamed from NorthstarDLL/dedicatedmaterialsystem.cpp) | 2 | ||||
-rw-r--r-- | NorthstarDLL/dllmain.cpp | 18 | ||||
-rw-r--r-- | NorthstarDLL/dllmain.h (renamed from NorthstarDLL/main.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/engine/host.cpp (renamed from NorthstarDLL/host.cpp) | 18 | ||||
-rw-r--r-- | NorthstarDLL/engine/hoststate.cpp (renamed from NorthstarDLL/hoststate.cpp) | 46 | ||||
-rw-r--r-- | NorthstarDLL/engine/hoststate.h (renamed from NorthstarDLL/hoststate.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/engine/r2engine.cpp (renamed from NorthstarDLL/r2engine.cpp) | 0 | ||||
-rw-r--r-- | NorthstarDLL/engine/r2engine.h (renamed from NorthstarDLL/r2engine.h) | 2 | ||||
-rw-r--r-- | NorthstarDLL/engine/runframe.cpp (renamed from NorthstarDLL/runframe.cpp) | 8 | ||||
-rw-r--r-- | NorthstarDLL/logging/crashhandler.cpp (renamed from NorthstarDLL/crashhandler.cpp) | 8 | ||||
-rw-r--r-- | NorthstarDLL/logging/crashhandler.h (renamed from NorthstarDLL/crashhandler.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/logging/logging.cpp (renamed from NorthstarDLL/logging.cpp) | 8 | ||||
-rw-r--r-- | NorthstarDLL/logging/logging.h (renamed from NorthstarDLL/logging.h) | 4 | ||||
-rw-r--r-- | NorthstarDLL/logging/loghooks.cpp (renamed from NorthstarDLL/loghooks.cpp) | 12 | ||||
-rw-r--r-- | NorthstarDLL/logging/loghooks.h (renamed from NorthstarDLL/loghooks.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/logging/sourceconsole.cpp (renamed from NorthstarDLL/sourceconsole.cpp) | 8 | ||||
-rw-r--r-- | NorthstarDLL/logging/sourceconsole.h (renamed from NorthstarDLL/sourceconsole.h) | 2 | ||||
-rw-r--r-- | NorthstarDLL/masterserver/masterserver.cpp (renamed from NorthstarDLL/masterserver.cpp) | 16 | ||||
-rw-r--r-- | NorthstarDLL/masterserver/masterserver.h (renamed from NorthstarDLL/masterserver.h) | 4 | ||||
-rw-r--r-- | NorthstarDLL/mods/compiled/kb_act.cpp (renamed from NorthstarDLL/kb_act.cpp) | 90 | ||||
-rw-r--r-- | NorthstarDLL/mods/compiled/modkeyvalues.cpp (renamed from NorthstarDLL/modkeyvalues.cpp) | 4 | ||||
-rw-r--r-- | NorthstarDLL/mods/compiled/modpdef.cpp (renamed from NorthstarDLL/modpdef.cpp) | 4 | ||||
-rw-r--r-- | NorthstarDLL/mods/compiled/modscriptsrson.cpp (renamed from NorthstarDLL/modscriptsrson.cpp) | 6 | ||||
-rw-r--r-- | NorthstarDLL/mods/modmanager.cpp (renamed from NorthstarDLL/modmanager.cpp) | 183 | ||||
-rw-r--r-- | NorthstarDLL/mods/modmanager.h (renamed from NorthstarDLL/modmanager.h) | 18 | ||||
-rw-r--r-- | NorthstarDLL/pch.h | 37 | ||||
-rw-r--r-- | NorthstarDLL/plugins/plugin_abi.h (renamed from NorthstarDLL/plugin_abi.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/plugins/plugins.cpp (renamed from NorthstarDLL/plugins.cpp) | 8 | ||||
-rw-r--r-- | NorthstarDLL/plugins/plugins.h (renamed from NorthstarDLL/plugins.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/scripts/client/clientchathooks.cpp (renamed from NorthstarDLL/clientchathooks.cpp) | 6 | ||||
-rw-r--r-- | NorthstarDLL/scripts/client/scriptbrowserhooks.cpp (renamed from NorthstarDLL/scriptbrowserhooks.cpp) | 0 | ||||
-rw-r--r-- | NorthstarDLL/scripts/client/scriptmainmenupromos.cpp (renamed from NorthstarDLL/scriptmainmenupromos.cpp) | 6 | ||||
-rw-r--r-- | NorthstarDLL/scripts/client/scriptmodmenu.cpp (renamed from NorthstarDLL/scriptmodmenu.cpp) | 23 | ||||
-rw-r--r-- | NorthstarDLL/scripts/client/scriptserverbrowser.cpp (renamed from NorthstarDLL/scriptserverbrowser.cpp) | 10 | ||||
-rw-r--r-- | NorthstarDLL/scripts/client/scriptservertoclientstringcommand.cpp (renamed from NorthstarDLL/scriptservertoclientstringcommand.cpp) | 6 | ||||
-rw-r--r-- | NorthstarDLL/scripts/scriptdatatables.cpp (renamed from NorthstarDLL/scriptdatatables.cpp) | 16 | ||||
-rw-r--r-- | NorthstarDLL/scripts/scripthttprequesthandler.cpp | 586 | ||||
-rw-r--r-- | NorthstarDLL/scripts/scripthttprequesthandler.h | 132 | ||||
-rw-r--r-- | NorthstarDLL/scripts/scriptjson.cpp (renamed from NorthstarDLL/scriptjson.cpp) | 31 | ||||
-rw-r--r-- | NorthstarDLL/scripts/scriptutility.cpp | 29 | ||||
-rw-r--r-- | NorthstarDLL/scripts/server/miscserverfixes.cpp (renamed from NorthstarDLL/miscserverfixes.cpp) | 0 | ||||
-rw-r--r-- | NorthstarDLL/scripts/server/miscserverscript.cpp (renamed from NorthstarDLL/miscserverscript.cpp) | 53 | ||||
-rw-r--r-- | NorthstarDLL/scripts/server/scriptuserinfo.cpp (renamed from NorthstarDLL/scriptuserinfo.cpp) | 210 | ||||
-rw-r--r-- | NorthstarDLL/scriptutility.cpp | 14 | ||||
-rw-r--r-- | NorthstarDLL/server/auth/bansystem.cpp (renamed from NorthstarDLL/bansystem.cpp) | 10 | ||||
-rw-r--r-- | NorthstarDLL/server/auth/bansystem.h (renamed from NorthstarDLL/bansystem.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/server/auth/serverauthentication.cpp (renamed from NorthstarDLL/serverauthentication.cpp) | 33 | ||||
-rw-r--r-- | NorthstarDLL/server/auth/serverauthentication.h (renamed from NorthstarDLL/serverauthentication.h) | 4 | ||||
-rw-r--r-- | NorthstarDLL/server/bots.cpp (renamed from NorthstarDLL/bots.cpp) | 12 | ||||
-rw-r--r-- | NorthstarDLL/server/bots.h (renamed from NorthstarDLL/bots.h) | 4 | ||||
-rw-r--r-- | NorthstarDLL/server/buildainfile.cpp (renamed from NorthstarDLL/buildainfile.cpp) | 6 | ||||
-rw-r--r-- | NorthstarDLL/server/r2server.cpp (renamed from NorthstarDLL/r2server.cpp) | 0 | ||||
-rw-r--r-- | NorthstarDLL/server/r2server.h (renamed from NorthstarDLL/r2server.h) | 2 | ||||
-rw-r--r-- | NorthstarDLL/server/serverchathooks.cpp (renamed from NorthstarDLL/serverchathooks.cpp) | 6 | ||||
-rw-r--r-- | NorthstarDLL/server/serverchathooks.h (renamed from NorthstarDLL/serverchathooks.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/server/serverpresence.cpp (renamed from NorthstarDLL/serverpresence.cpp) | 6 | ||||
-rw-r--r-- | NorthstarDLL/server/serverpresence.h (renamed from NorthstarDLL/serverpresence.h) | 2 | ||||
-rw-r--r-- | NorthstarDLL/shared/exploit_fixes/exploitfixes.cpp (renamed from NorthstarDLL/exploitfixes.cpp) | 14 | ||||
-rw-r--r-- | NorthstarDLL/shared/exploit_fixes/exploitfixes_lzss.cpp (renamed from NorthstarDLL/exploitfixes_lzss.cpp) | 0 | ||||
-rw-r--r-- | NorthstarDLL/shared/exploit_fixes/exploitfixes_utf8parser.cpp (renamed from NorthstarDLL/exploitfixes_utf8parser.cpp) | 0 | ||||
-rw-r--r-- | NorthstarDLL/shared/exploit_fixes/ns_limits.cpp (renamed from NorthstarDLL/limits.cpp) | 18 | ||||
-rw-r--r-- | NorthstarDLL/shared/exploit_fixes/ns_limits.h (renamed from NorthstarDLL/limits.h) | 4 | ||||
-rw-r--r-- | NorthstarDLL/shared/keyvalues.cpp (renamed from NorthstarDLL/keyvalues.cpp) | 2632 | ||||
-rw-r--r-- | NorthstarDLL/shared/keyvalues.h (renamed from NorthstarDLL/keyvalues.h) | 268 | ||||
-rw-r--r-- | NorthstarDLL/shared/maxplayers.cpp (renamed from NorthstarDLL/maxplayers.cpp) | 2 | ||||
-rw-r--r-- | NorthstarDLL/shared/maxplayers.h (renamed from NorthstarDLL/maxplayers.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/shared/misccommands.cpp (renamed from NorthstarDLL/misccommands.cpp) | 20 | ||||
-rw-r--r-- | NorthstarDLL/shared/misccommands.h (renamed from NorthstarDLL/misccommands.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/shared/playlist.cpp (renamed from NorthstarDLL/playlist.cpp) | 10 | ||||
-rw-r--r-- | NorthstarDLL/shared/playlist.h (renamed from NorthstarDLL/playlist.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/squirrel/squirrel.cpp (renamed from NorthstarDLL/squirrel.cpp) | 121 | ||||
-rw-r--r-- | NorthstarDLL/squirrel/squirrel.h (renamed from NorthstarDLL/squirrel.h) | 38 | ||||
-rw-r--r-- | NorthstarDLL/squirrel/squirrelautobind.cpp (renamed from NorthstarDLL/squirrelautobind.cpp) | 0 | ||||
-rw-r--r-- | NorthstarDLL/squirrel/squirrelautobind.h (renamed from NorthstarDLL/squirrelautobind.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/squirrel/squirrelclasstypes.h (renamed from NorthstarDLL/squirrelclasstypes.h) | 3 | ||||
-rw-r--r-- | NorthstarDLL/squirrel/squirreldatatypes.h (renamed from NorthstarDLL/squirreldatatypes.h) | 4 | ||||
-rw-r--r-- | NorthstarDLL/util/printcommands.cpp (renamed from NorthstarDLL/printcommands.cpp) | 6 | ||||
-rw-r--r-- | NorthstarDLL/util/printcommands.h (renamed from NorthstarDLL/printcommand.h) | 2 | ||||
-rw-r--r-- | NorthstarDLL/util/printmaps.cpp (renamed from NorthstarDLL/printmaps.cpp) | 10 | ||||
-rw-r--r-- | NorthstarDLL/util/printmaps.h (renamed from NorthstarDLL/printmaps.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/util/version.cpp | 96 | ||||
-rw-r--r-- | NorthstarDLL/util/version.h (renamed from NorthstarDLL/version.h) | 0 | ||||
-rw-r--r-- | NorthstarDLL/version.cpp | 26 | ||||
-rw-r--r-- | NorthstarLauncher/NorthstarLauncher.vcxproj | 37 | ||||
-rw-r--r-- | NorthstarLauncher/NorthstarLauncher.vcxproj.filters | 120 | ||||
-rw-r--r-- | R2Northstar.sln | 9 | ||||
-rw-r--r-- | include/MinHook.h (renamed from NorthstarDLL/include/MinHook.h) | 0 | ||||
-rw-r--r-- | include/MinHook.x64.lib (renamed from NorthstarDLL/include/MinHook.x64.lib) | bin | 32401 -> 32401 bytes | |||
-rw-r--r-- | include/crypto/__DECC_INCLUDE_EPILOGUE.H (renamed from NorthstarDLL/include/crypto/__DECC_INCLUDE_EPILOGUE.H) | 0 | ||||
-rw-r--r-- | include/crypto/__DECC_INCLUDE_PROLOGUE.H (renamed from NorthstarDLL/include/crypto/__DECC_INCLUDE_PROLOGUE.H) | 0 | ||||
-rw-r--r-- | include/crypto/aes_platform.h (renamed from NorthstarDLL/include/crypto/aes_platform.h) | 0 | ||||
-rw-r--r-- | include/crypto/aria.h (renamed from NorthstarDLL/include/crypto/aria.h) | 0 | ||||
-rw-r--r-- | include/crypto/asn1.h (renamed from NorthstarDLL/include/crypto/asn1.h) | 0 | ||||
-rw-r--r-- | include/crypto/asn1_dsa.h (renamed from NorthstarDLL/include/crypto/asn1_dsa.h) | 0 | ||||
-rw-r--r-- | include/crypto/asn1err.h (renamed from NorthstarDLL/include/crypto/asn1err.h) | 0 | ||||
-rw-r--r-- | include/crypto/async.h (renamed from NorthstarDLL/include/crypto/async.h) | 0 | ||||
-rw-r--r-- | include/crypto/asyncerr.h (renamed from NorthstarDLL/include/crypto/asyncerr.h) | 0 | ||||
-rw-r--r-- | include/crypto/bioerr.h (renamed from NorthstarDLL/include/crypto/bioerr.h) | 0 | ||||
-rw-r--r-- | include/crypto/bn.h (renamed from NorthstarDLL/include/crypto/bn.h) | 0 | ||||
-rw-r--r-- | include/crypto/bn_conf.h (renamed from NorthstarDLL/include/crypto/bn_conf.h) | 0 | ||||
-rw-r--r-- | include/crypto/bn_conf.h.in (renamed from NorthstarDLL/include/crypto/bn_conf.h.in) | 0 | ||||
-rw-r--r-- | include/crypto/bn_dh.h (renamed from NorthstarDLL/include/crypto/bn_dh.h) | 0 | ||||
-rw-r--r-- | include/crypto/bn_srp.h (renamed from NorthstarDLL/include/crypto/bn_srp.h) | 0 | ||||
-rw-r--r-- | include/crypto/bnerr.h (renamed from NorthstarDLL/include/crypto/bnerr.h) | 0 | ||||
-rw-r--r-- | include/crypto/buffererr.h (renamed from NorthstarDLL/include/crypto/buffererr.h) | 0 | ||||
-rw-r--r-- | include/crypto/chacha.h (renamed from NorthstarDLL/include/crypto/chacha.h) | 0 | ||||
-rw-r--r-- | include/crypto/cmll_platform.h (renamed from NorthstarDLL/include/crypto/cmll_platform.h) | 0 | ||||
-rw-r--r-- | include/crypto/cmperr.h (renamed from NorthstarDLL/include/crypto/cmperr.h) | 0 | ||||
-rw-r--r-- | include/crypto/cmserr.h (renamed from NorthstarDLL/include/crypto/cmserr.h) | 0 | ||||
-rw-r--r-- | include/crypto/comperr.h (renamed from NorthstarDLL/include/crypto/comperr.h) | 0 | ||||
-rw-r--r-- | include/crypto/conferr.h (renamed from NorthstarDLL/include/crypto/conferr.h) | 0 | ||||
-rw-r--r-- | include/crypto/crmferr.h (renamed from NorthstarDLL/include/crypto/crmferr.h) | 0 | ||||
-rw-r--r-- | include/crypto/cryptlib.h (renamed from NorthstarDLL/include/crypto/cryptlib.h) | 0 | ||||
-rw-r--r-- | include/crypto/cryptoerr.h (renamed from NorthstarDLL/include/crypto/cryptoerr.h) | 0 | ||||
-rw-r--r-- | include/crypto/cterr.h (renamed from NorthstarDLL/include/crypto/cterr.h) | 0 | ||||
-rw-r--r-- | include/crypto/ctype.h (renamed from NorthstarDLL/include/crypto/ctype.h) | 0 | ||||
-rw-r--r-- | include/crypto/decoder.h (renamed from NorthstarDLL/include/crypto/decoder.h) | 0 | ||||
-rw-r--r-- | include/crypto/decodererr.h (renamed from NorthstarDLL/include/crypto/decodererr.h) | 0 | ||||
-rw-r--r-- | include/crypto/des_platform.h (renamed from NorthstarDLL/include/crypto/des_platform.h) | 0 | ||||
-rw-r--r-- | include/crypto/dh.h (renamed from NorthstarDLL/include/crypto/dh.h) | 0 | ||||
-rw-r--r-- | include/crypto/dherr.h (renamed from NorthstarDLL/include/crypto/dherr.h) | 0 | ||||
-rw-r--r-- | include/crypto/dsa.h (renamed from NorthstarDLL/include/crypto/dsa.h) | 0 | ||||
-rw-r--r-- | include/crypto/dsaerr.h (renamed from NorthstarDLL/include/crypto/dsaerr.h) | 0 | ||||
-rw-r--r-- | include/crypto/dso_conf.h (renamed from NorthstarDLL/include/crypto/dso_conf.h) | 0 | ||||
-rw-r--r-- | include/crypto/dso_conf.h.in (renamed from NorthstarDLL/include/crypto/dso_conf.h.in) | 0 | ||||
-rw-r--r-- | include/crypto/ec.h (renamed from NorthstarDLL/include/crypto/ec.h) | 0 | ||||
-rw-r--r-- | include/crypto/ecerr.h (renamed from NorthstarDLL/include/crypto/ecerr.h) | 0 | ||||
-rw-r--r-- | include/crypto/ecx.h (renamed from NorthstarDLL/include/crypto/ecx.h) | 0 | ||||
-rw-r--r-- | include/crypto/encoder.h (renamed from NorthstarDLL/include/crypto/encoder.h) | 0 | ||||
-rw-r--r-- | include/crypto/encodererr.h (renamed from NorthstarDLL/include/crypto/encodererr.h) | 0 | ||||
-rw-r--r-- | include/crypto/engine.h (renamed from NorthstarDLL/include/crypto/engine.h) | 0 | ||||
-rw-r--r-- | include/crypto/engineerr.h (renamed from NorthstarDLL/include/crypto/engineerr.h) | 0 | ||||
-rw-r--r-- | include/crypto/err.h (renamed from NorthstarDLL/include/crypto/err.h) | 0 | ||||
-rw-r--r-- | include/crypto/ess.h (renamed from NorthstarDLL/include/crypto/ess.h) | 0 | ||||
-rw-r--r-- | include/crypto/esserr.h (renamed from NorthstarDLL/include/crypto/esserr.h) | 0 | ||||
-rw-r--r-- | include/crypto/evp.h (renamed from NorthstarDLL/include/crypto/evp.h) | 0 | ||||
-rw-r--r-- | include/crypto/evperr.h (renamed from NorthstarDLL/include/crypto/evperr.h) | 0 | ||||
-rw-r--r-- | include/crypto/httperr.h (renamed from NorthstarDLL/include/crypto/httperr.h) | 0 | ||||
-rw-r--r-- | include/crypto/lhash.h (renamed from NorthstarDLL/include/crypto/lhash.h) | 0 | ||||
-rw-r--r-- | include/crypto/md32_common.h (renamed from NorthstarDLL/include/crypto/md32_common.h) | 0 | ||||
-rw-r--r-- | include/crypto/modes.h (renamed from NorthstarDLL/include/crypto/modes.h) | 0 | ||||
-rw-r--r-- | include/crypto/objects.h (renamed from NorthstarDLL/include/crypto/objects.h) | 0 | ||||
-rw-r--r-- | include/crypto/objectserr.h (renamed from NorthstarDLL/include/crypto/objectserr.h) | 0 | ||||
-rw-r--r-- | include/crypto/ocsperr.h (renamed from NorthstarDLL/include/crypto/ocsperr.h) | 0 | ||||
-rw-r--r-- | include/crypto/pem.h (renamed from NorthstarDLL/include/crypto/pem.h) | 0 | ||||
-rw-r--r-- | include/crypto/pemerr.h (renamed from NorthstarDLL/include/crypto/pemerr.h) | 0 | ||||
-rw-r--r-- | include/crypto/pkcs12err.h (renamed from NorthstarDLL/include/crypto/pkcs12err.h) | 0 | ||||
-rw-r--r-- | include/crypto/pkcs7.h (renamed from NorthstarDLL/include/crypto/pkcs7.h) | 0 | ||||
-rw-r--r-- | include/crypto/pkcs7err.h (renamed from NorthstarDLL/include/crypto/pkcs7err.h) | 0 | ||||
-rw-r--r-- | include/crypto/poly1305.h (renamed from NorthstarDLL/include/crypto/poly1305.h) | 0 | ||||
-rw-r--r-- | include/crypto/ppc_arch.h (renamed from NorthstarDLL/include/crypto/ppc_arch.h) | 0 | ||||
-rw-r--r-- | include/crypto/punycode.h (renamed from NorthstarDLL/include/crypto/punycode.h) | 0 | ||||
-rw-r--r-- | include/crypto/rand.h (renamed from NorthstarDLL/include/crypto/rand.h) | 0 | ||||
-rw-r--r-- | include/crypto/rand_pool.h (renamed from NorthstarDLL/include/crypto/rand_pool.h) | 0 | ||||
-rw-r--r-- | include/crypto/randerr.h (renamed from NorthstarDLL/include/crypto/randerr.h) | 0 | ||||
-rw-r--r-- | include/crypto/rsa.h (renamed from NorthstarDLL/include/crypto/rsa.h) | 0 | ||||
-rw-r--r-- | include/crypto/rsaerr.h (renamed from NorthstarDLL/include/crypto/rsaerr.h) | 0 | ||||
-rw-r--r-- | include/crypto/security_bits.h (renamed from NorthstarDLL/include/crypto/security_bits.h) | 0 | ||||
-rw-r--r-- | include/crypto/sha.h (renamed from NorthstarDLL/include/crypto/sha.h) | 0 | ||||
-rw-r--r-- | include/crypto/siphash.h (renamed from NorthstarDLL/include/crypto/siphash.h) | 0 | ||||
-rw-r--r-- | include/crypto/siv.h (renamed from NorthstarDLL/include/crypto/siv.h) | 0 | ||||
-rw-r--r-- | include/crypto/sm2.h (renamed from NorthstarDLL/include/crypto/sm2.h) | 0 | ||||
-rw-r--r-- | include/crypto/sm2err.h (renamed from NorthstarDLL/include/crypto/sm2err.h) | 0 | ||||
-rw-r--r-- | include/crypto/sm4.h (renamed from NorthstarDLL/include/crypto/sm4.h) | 0 | ||||
-rw-r--r-- | include/crypto/sparc_arch.h (renamed from NorthstarDLL/include/crypto/sparc_arch.h) | 0 | ||||
-rw-r--r-- | include/crypto/sparse_array.h (renamed from NorthstarDLL/include/crypto/sparse_array.h) | 0 | ||||
-rw-r--r-- | include/crypto/store.h (renamed from NorthstarDLL/include/crypto/store.h) | 0 | ||||
-rw-r--r-- | include/crypto/storeerr.h (renamed from NorthstarDLL/include/crypto/storeerr.h) | 0 | ||||
-rw-r--r-- | include/crypto/tserr.h (renamed from NorthstarDLL/include/crypto/tserr.h) | 0 | ||||
-rw-r--r-- | include/crypto/types.h (renamed from NorthstarDLL/include/crypto/types.h) | 0 | ||||
-rw-r--r-- | include/crypto/uierr.h (renamed from NorthstarDLL/include/crypto/uierr.h) | 0 | ||||
-rw-r--r-- | include/crypto/x509.h (renamed from NorthstarDLL/include/crypto/x509.h) | 0 | ||||
-rw-r--r-- | include/crypto/x509err.h (renamed from NorthstarDLL/include/crypto/x509err.h) | 0 | ||||
-rw-r--r-- | include/crypto/x509v3err.h (renamed from NorthstarDLL/include/crypto/x509v3err.h) | 0 | ||||
-rw-r--r-- | include/httplib.h (renamed from NorthstarDLL/include/httplib.h) | 0 | ||||
-rw-r--r-- | include/internal/__DECC_INCLUDE_EPILOGUE.H (renamed from NorthstarDLL/include/internal/__DECC_INCLUDE_EPILOGUE.H) | 0 | ||||
-rw-r--r-- | include/internal/__DECC_INCLUDE_PROLOGUE.H (renamed from NorthstarDLL/include/internal/__DECC_INCLUDE_PROLOGUE.H) | 0 | ||||
-rw-r--r-- | include/internal/asn1.h (renamed from NorthstarDLL/include/internal/asn1.h) | 0 | ||||
-rw-r--r-- | include/internal/bio.h (renamed from NorthstarDLL/include/internal/bio.h) | 0 | ||||
-rw-r--r-- | include/internal/comp.h (renamed from NorthstarDLL/include/internal/comp.h) | 0 | ||||
-rw-r--r-- | include/internal/conf.h (renamed from NorthstarDLL/include/internal/conf.h) | 0 | ||||
-rw-r--r-- | include/internal/constant_time.h (renamed from NorthstarDLL/include/internal/constant_time.h) | 0 | ||||
-rw-r--r-- | include/internal/core.h (renamed from NorthstarDLL/include/internal/core.h) | 0 | ||||
-rw-r--r-- | include/internal/cryptlib.h (renamed from NorthstarDLL/include/internal/cryptlib.h) | 0 | ||||
-rw-r--r-- | include/internal/dane.h (renamed from NorthstarDLL/include/internal/dane.h) | 0 | ||||
-rw-r--r-- | include/internal/deprecated.h (renamed from NorthstarDLL/include/internal/deprecated.h) | 0 | ||||
-rw-r--r-- | include/internal/der.h (renamed from NorthstarDLL/include/internal/der.h) | 0 | ||||
-rw-r--r-- | include/internal/dso.h (renamed from NorthstarDLL/include/internal/dso.h) | 0 | ||||
-rw-r--r-- | include/internal/dsoerr.h (renamed from NorthstarDLL/include/internal/dsoerr.h) | 0 | ||||
-rw-r--r-- | include/internal/endian.h (renamed from NorthstarDLL/include/internal/endian.h) | 0 | ||||
-rw-r--r-- | include/internal/err.h (renamed from NorthstarDLL/include/internal/err.h) | 0 | ||||
-rw-r--r-- | include/internal/ffc.h (renamed from NorthstarDLL/include/internal/ffc.h) | 0 | ||||
-rw-r--r-- | include/internal/ktls.h (renamed from NorthstarDLL/include/internal/ktls.h) | 0 | ||||
-rw-r--r-- | include/internal/namemap.h (renamed from NorthstarDLL/include/internal/namemap.h) | 0 | ||||
-rw-r--r-- | include/internal/nelem.h (renamed from NorthstarDLL/include/internal/nelem.h) | 0 | ||||
-rw-r--r-- | include/internal/numbers.h (renamed from NorthstarDLL/include/internal/numbers.h) | 0 | ||||
-rw-r--r-- | include/internal/o_dir.h (renamed from NorthstarDLL/include/internal/o_dir.h) | 0 | ||||
-rw-r--r-- | include/internal/packet.h (renamed from NorthstarDLL/include/internal/packet.h) | 0 | ||||
-rw-r--r-- | include/internal/param_build_set.h (renamed from NorthstarDLL/include/internal/param_build_set.h) | 0 | ||||
-rw-r--r-- | include/internal/passphrase.h (renamed from NorthstarDLL/include/internal/passphrase.h) | 0 | ||||
-rw-r--r-- | include/internal/property.h (renamed from NorthstarDLL/include/internal/property.h) | 0 | ||||
-rw-r--r-- | include/internal/propertyerr.h (renamed from NorthstarDLL/include/internal/propertyerr.h) | 0 | ||||
-rw-r--r-- | include/internal/provider.h (renamed from NorthstarDLL/include/internal/provider.h) | 0 | ||||
-rw-r--r-- | include/internal/refcount.h (renamed from NorthstarDLL/include/internal/refcount.h) | 0 | ||||
-rw-r--r-- | include/internal/sha3.h (renamed from NorthstarDLL/include/internal/sha3.h) | 0 | ||||
-rw-r--r-- | include/internal/sizes.h (renamed from NorthstarDLL/include/internal/sizes.h) | 0 | ||||
-rw-r--r-- | include/internal/sm3.h (renamed from NorthstarDLL/include/internal/sm3.h) | 0 | ||||
-rw-r--r-- | include/internal/sockets.h (renamed from NorthstarDLL/include/internal/sockets.h) | 0 | ||||
-rw-r--r-- | include/internal/sslconf.h (renamed from NorthstarDLL/include/internal/sslconf.h) | 0 | ||||
-rw-r--r-- | include/internal/symhacks.h (renamed from NorthstarDLL/include/internal/symhacks.h) | 0 | ||||
-rw-r--r-- | include/internal/thread_once.h (renamed from NorthstarDLL/include/internal/thread_once.h) | 0 | ||||
-rw-r--r-- | include/internal/tlsgroups.h (renamed from NorthstarDLL/include/internal/tlsgroups.h) | 0 | ||||
-rw-r--r-- | include/internal/tsan_assist.h (renamed from NorthstarDLL/include/internal/tsan_assist.h) | 0 | ||||
-rw-r--r-- | include/internal/unicode.h (renamed from NorthstarDLL/include/internal/unicode.h) | 0 | ||||
-rw-r--r-- | include/libcrypto_static.lib (renamed from NorthstarDLL/include/libcrypto_static.lib) | bin | 35832383 -> 35832383 bytes | |||
-rw-r--r-- | include/libcurl/include/curl/curl.h (renamed from NorthstarDLL/include/libcurl/include/curl/curl.h) | 0 | ||||
-rw-r--r-- | include/libcurl/include/curl/curlver.h (renamed from NorthstarDLL/include/libcurl/include/curl/curlver.h) | 0 | ||||
-rw-r--r-- | include/libcurl/include/curl/easy.h (renamed from NorthstarDLL/include/libcurl/include/curl/easy.h) | 0 | ||||
-rw-r--r-- | include/libcurl/include/curl/mprintf.h (renamed from NorthstarDLL/include/libcurl/include/curl/mprintf.h) | 0 | ||||
-rw-r--r-- | include/libcurl/include/curl/multi.h (renamed from NorthstarDLL/include/libcurl/include/curl/multi.h) | 0 | ||||
-rw-r--r-- | include/libcurl/include/curl/options.h (renamed from NorthstarDLL/include/libcurl/include/curl/options.h) | 0 | ||||
-rw-r--r-- | include/libcurl/include/curl/stdcheaders.h (renamed from NorthstarDLL/include/libcurl/include/curl/stdcheaders.h) | 0 | ||||
-rw-r--r-- | include/libcurl/include/curl/system.h (renamed from NorthstarDLL/include/libcurl/include/curl/system.h) | 0 | ||||
-rw-r--r-- | include/libcurl/include/curl/typecheck-gcc.h (renamed from NorthstarDLL/include/libcurl/include/curl/typecheck-gcc.h) | 0 | ||||
-rw-r--r-- | include/libcurl/include/curl/urlapi.h (renamed from NorthstarDLL/include/libcurl/include/curl/urlapi.h) | 0 | ||||
-rw-r--r-- | include/libcurl/lib/libcurl_a.lib (renamed from NorthstarDLL/include/libcurl/lib/libcurl_a.lib) | bin | 2140641 -> 2140641 bytes | |||
-rw-r--r-- | include/libssl_static.lib (renamed from NorthstarDLL/include/libssl_static.lib) | bin | 4851209 -> 4851209 bytes | |||
-rw-r--r-- | include/openssl/__DECC_INCLUDE_EPILOGUE.H (renamed from NorthstarDLL/include/openssl/__DECC_INCLUDE_EPILOGUE.H) | 0 | ||||
-rw-r--r-- | include/openssl/__DECC_INCLUDE_PROLOGUE.H (renamed from NorthstarDLL/include/openssl/__DECC_INCLUDE_PROLOGUE.H) | 0 | ||||
-rw-r--r-- | include/openssl/aes.h (renamed from NorthstarDLL/include/openssl/aes.h) | 0 | ||||
-rw-r--r-- | include/openssl/asn1.h (renamed from NorthstarDLL/include/openssl/asn1.h) | 0 | ||||
-rw-r--r-- | include/openssl/asn1.h.in (renamed from NorthstarDLL/include/openssl/asn1.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/asn1_mac.h (renamed from NorthstarDLL/include/openssl/asn1_mac.h) | 0 | ||||
-rw-r--r-- | include/openssl/asn1err.h (renamed from NorthstarDLL/include/openssl/asn1err.h) | 0 | ||||
-rw-r--r-- | include/openssl/asn1t.h (renamed from NorthstarDLL/include/openssl/asn1t.h) | 0 | ||||
-rw-r--r-- | include/openssl/asn1t.h.in (renamed from NorthstarDLL/include/openssl/asn1t.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/async.h (renamed from NorthstarDLL/include/openssl/async.h) | 0 | ||||
-rw-r--r-- | include/openssl/asyncerr.h (renamed from NorthstarDLL/include/openssl/asyncerr.h) | 0 | ||||
-rw-r--r-- | include/openssl/bio.h (renamed from NorthstarDLL/include/openssl/bio.h) | 0 | ||||
-rw-r--r-- | include/openssl/bio.h.in (renamed from NorthstarDLL/include/openssl/bio.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/bioerr.h (renamed from NorthstarDLL/include/openssl/bioerr.h) | 0 | ||||
-rw-r--r-- | include/openssl/blowfish.h (renamed from NorthstarDLL/include/openssl/blowfish.h) | 0 | ||||
-rw-r--r-- | include/openssl/bn.h (renamed from NorthstarDLL/include/openssl/bn.h) | 0 | ||||
-rw-r--r-- | include/openssl/bnerr.h (renamed from NorthstarDLL/include/openssl/bnerr.h) | 0 | ||||
-rw-r--r-- | include/openssl/buffer.h (renamed from NorthstarDLL/include/openssl/buffer.h) | 0 | ||||
-rw-r--r-- | include/openssl/buffererr.h (renamed from NorthstarDLL/include/openssl/buffererr.h) | 0 | ||||
-rw-r--r-- | include/openssl/camellia.h (renamed from NorthstarDLL/include/openssl/camellia.h) | 0 | ||||
-rw-r--r-- | include/openssl/cast.h (renamed from NorthstarDLL/include/openssl/cast.h) | 0 | ||||
-rw-r--r-- | include/openssl/cmac.h (renamed from NorthstarDLL/include/openssl/cmac.h) | 0 | ||||
-rw-r--r-- | include/openssl/cmp.h (renamed from NorthstarDLL/include/openssl/cmp.h) | 0 | ||||
-rw-r--r-- | include/openssl/cmp.h.in (renamed from NorthstarDLL/include/openssl/cmp.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/cmp_util.h (renamed from NorthstarDLL/include/openssl/cmp_util.h) | 0 | ||||
-rw-r--r-- | include/openssl/cmperr.h (renamed from NorthstarDLL/include/openssl/cmperr.h) | 0 | ||||
-rw-r--r-- | include/openssl/cms.h (renamed from NorthstarDLL/include/openssl/cms.h) | 0 | ||||
-rw-r--r-- | include/openssl/cms.h.in (renamed from NorthstarDLL/include/openssl/cms.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/cmserr.h (renamed from NorthstarDLL/include/openssl/cmserr.h) | 0 | ||||
-rw-r--r-- | include/openssl/comp.h (renamed from NorthstarDLL/include/openssl/comp.h) | 0 | ||||
-rw-r--r-- | include/openssl/comperr.h (renamed from NorthstarDLL/include/openssl/comperr.h) | 0 | ||||
-rw-r--r-- | include/openssl/conf.h (renamed from NorthstarDLL/include/openssl/conf.h) | 0 | ||||
-rw-r--r-- | include/openssl/conf.h.in (renamed from NorthstarDLL/include/openssl/conf.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/conf_api.h (renamed from NorthstarDLL/include/openssl/conf_api.h) | 0 | ||||
-rw-r--r-- | include/openssl/conferr.h (renamed from NorthstarDLL/include/openssl/conferr.h) | 0 | ||||
-rw-r--r-- | include/openssl/configuration.h (renamed from NorthstarDLL/include/openssl/configuration.h) | 0 | ||||
-rw-r--r-- | include/openssl/configuration.h.in (renamed from NorthstarDLL/include/openssl/configuration.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/conftypes.h (renamed from NorthstarDLL/include/openssl/conftypes.h) | 0 | ||||
-rw-r--r-- | include/openssl/core.h (renamed from NorthstarDLL/include/openssl/core.h) | 0 | ||||
-rw-r--r-- | include/openssl/core_dispatch.h (renamed from NorthstarDLL/include/openssl/core_dispatch.h) | 0 | ||||
-rw-r--r-- | include/openssl/core_names.h (renamed from NorthstarDLL/include/openssl/core_names.h) | 0 | ||||
-rw-r--r-- | include/openssl/core_object.h (renamed from NorthstarDLL/include/openssl/core_object.h) | 0 | ||||
-rw-r--r-- | include/openssl/crmf.h (renamed from NorthstarDLL/include/openssl/crmf.h) | 0 | ||||
-rw-r--r-- | include/openssl/crmf.h.in (renamed from NorthstarDLL/include/openssl/crmf.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/crmferr.h (renamed from NorthstarDLL/include/openssl/crmferr.h) | 0 | ||||
-rw-r--r-- | include/openssl/crypto.h (renamed from NorthstarDLL/include/openssl/crypto.h) | 0 | ||||
-rw-r--r-- | include/openssl/crypto.h.in (renamed from NorthstarDLL/include/openssl/crypto.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/cryptoerr.h (renamed from NorthstarDLL/include/openssl/cryptoerr.h) | 0 | ||||
-rw-r--r-- | include/openssl/cryptoerr_legacy.h (renamed from NorthstarDLL/include/openssl/cryptoerr_legacy.h) | 0 | ||||
-rw-r--r-- | include/openssl/ct.h (renamed from NorthstarDLL/include/openssl/ct.h) | 0 | ||||
-rw-r--r-- | include/openssl/ct.h.in (renamed from NorthstarDLL/include/openssl/ct.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/cterr.h (renamed from NorthstarDLL/include/openssl/cterr.h) | 0 | ||||
-rw-r--r-- | include/openssl/decoder.h (renamed from NorthstarDLL/include/openssl/decoder.h) | 0 | ||||
-rw-r--r-- | include/openssl/decodererr.h (renamed from NorthstarDLL/include/openssl/decodererr.h) | 0 | ||||
-rw-r--r-- | include/openssl/des.h (renamed from NorthstarDLL/include/openssl/des.h) | 0 | ||||
-rw-r--r-- | include/openssl/dh.h (renamed from NorthstarDLL/include/openssl/dh.h) | 0 | ||||
-rw-r--r-- | include/openssl/dherr.h (renamed from NorthstarDLL/include/openssl/dherr.h) | 0 | ||||
-rw-r--r-- | include/openssl/dsa.h (renamed from NorthstarDLL/include/openssl/dsa.h) | 0 | ||||
-rw-r--r-- | include/openssl/dsaerr.h (renamed from NorthstarDLL/include/openssl/dsaerr.h) | 0 | ||||
-rw-r--r-- | include/openssl/dtls1.h (renamed from NorthstarDLL/include/openssl/dtls1.h) | 0 | ||||
-rw-r--r-- | include/openssl/e_os2.h (renamed from NorthstarDLL/include/openssl/e_os2.h) | 0 | ||||
-rw-r--r-- | include/openssl/ebcdic.h (renamed from NorthstarDLL/include/openssl/ebcdic.h) | 0 | ||||
-rw-r--r-- | include/openssl/ec.h (renamed from NorthstarDLL/include/openssl/ec.h) | 0 | ||||
-rw-r--r-- | include/openssl/ecdh.h (renamed from NorthstarDLL/include/openssl/ecdh.h) | 0 | ||||
-rw-r--r-- | include/openssl/ecdsa.h (renamed from NorthstarDLL/include/openssl/ecdsa.h) | 0 | ||||
-rw-r--r-- | include/openssl/ecerr.h (renamed from NorthstarDLL/include/openssl/ecerr.h) | 0 | ||||
-rw-r--r-- | include/openssl/encoder.h (renamed from NorthstarDLL/include/openssl/encoder.h) | 0 | ||||
-rw-r--r-- | include/openssl/encodererr.h (renamed from NorthstarDLL/include/openssl/encodererr.h) | 0 | ||||
-rw-r--r-- | include/openssl/engine.h (renamed from NorthstarDLL/include/openssl/engine.h) | 0 | ||||
-rw-r--r-- | include/openssl/engineerr.h (renamed from NorthstarDLL/include/openssl/engineerr.h) | 0 | ||||
-rw-r--r-- | include/openssl/err.h (renamed from NorthstarDLL/include/openssl/err.h) | 0 | ||||
-rw-r--r-- | include/openssl/err.h.in (renamed from NorthstarDLL/include/openssl/err.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/ess.h (renamed from NorthstarDLL/include/openssl/ess.h) | 0 | ||||
-rw-r--r-- | include/openssl/ess.h.in (renamed from NorthstarDLL/include/openssl/ess.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/esserr.h (renamed from NorthstarDLL/include/openssl/esserr.h) | 0 | ||||
-rw-r--r-- | include/openssl/evp.h (renamed from NorthstarDLL/include/openssl/evp.h) | 0 | ||||
-rw-r--r-- | include/openssl/evperr.h (renamed from NorthstarDLL/include/openssl/evperr.h) | 0 | ||||
-rw-r--r-- | include/openssl/fips_names.h (renamed from NorthstarDLL/include/openssl/fips_names.h) | 0 | ||||
-rw-r--r-- | include/openssl/fipskey.h (renamed from NorthstarDLL/include/openssl/fipskey.h) | 0 | ||||
-rw-r--r-- | include/openssl/fipskey.h.in (renamed from NorthstarDLL/include/openssl/fipskey.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/hmac.h (renamed from NorthstarDLL/include/openssl/hmac.h) | 0 | ||||
-rw-r--r-- | include/openssl/http.h (renamed from NorthstarDLL/include/openssl/http.h) | 0 | ||||
-rw-r--r-- | include/openssl/httperr.h (renamed from NorthstarDLL/include/openssl/httperr.h) | 0 | ||||
-rw-r--r-- | include/openssl/idea.h (renamed from NorthstarDLL/include/openssl/idea.h) | 0 | ||||
-rw-r--r-- | include/openssl/kdf.h (renamed from NorthstarDLL/include/openssl/kdf.h) | 0 | ||||
-rw-r--r-- | include/openssl/kdferr.h (renamed from NorthstarDLL/include/openssl/kdferr.h) | 0 | ||||
-rw-r--r-- | include/openssl/lhash.h (renamed from NorthstarDLL/include/openssl/lhash.h) | 0 | ||||
-rw-r--r-- | include/openssl/lhash.h.in (renamed from NorthstarDLL/include/openssl/lhash.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/macros.h (renamed from NorthstarDLL/include/openssl/macros.h) | 0 | ||||
-rw-r--r-- | include/openssl/md2.h (renamed from NorthstarDLL/include/openssl/md2.h) | 0 | ||||
-rw-r--r-- | include/openssl/md4.h (renamed from NorthstarDLL/include/openssl/md4.h) | 0 | ||||
-rw-r--r-- | include/openssl/md5.h (renamed from NorthstarDLL/include/openssl/md5.h) | 0 | ||||
-rw-r--r-- | include/openssl/mdc2.h (renamed from NorthstarDLL/include/openssl/mdc2.h) | 0 | ||||
-rw-r--r-- | include/openssl/modes.h (renamed from NorthstarDLL/include/openssl/modes.h) | 0 | ||||
-rw-r--r-- | include/openssl/obj_mac.h (renamed from NorthstarDLL/include/openssl/obj_mac.h) | 0 | ||||
-rw-r--r-- | include/openssl/objects.h (renamed from NorthstarDLL/include/openssl/objects.h) | 0 | ||||
-rw-r--r-- | include/openssl/objectserr.h (renamed from NorthstarDLL/include/openssl/objectserr.h) | 0 | ||||
-rw-r--r-- | include/openssl/ocsp.h (renamed from NorthstarDLL/include/openssl/ocsp.h) | 0 | ||||
-rw-r--r-- | include/openssl/ocsp.h.in (renamed from NorthstarDLL/include/openssl/ocsp.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/ocsperr.h (renamed from NorthstarDLL/include/openssl/ocsperr.h) | 0 | ||||
-rw-r--r-- | include/openssl/opensslconf.h (renamed from NorthstarDLL/include/openssl/opensslconf.h) | 0 | ||||
-rw-r--r-- | include/openssl/opensslv.h (renamed from NorthstarDLL/include/openssl/opensslv.h) | 0 | ||||
-rw-r--r-- | include/openssl/opensslv.h.in (renamed from NorthstarDLL/include/openssl/opensslv.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/ossl_typ.h (renamed from NorthstarDLL/include/openssl/ossl_typ.h) | 0 | ||||
-rw-r--r-- | include/openssl/param_build.h (renamed from NorthstarDLL/include/openssl/param_build.h) | 0 | ||||
-rw-r--r-- | include/openssl/params.h (renamed from NorthstarDLL/include/openssl/params.h) | 0 | ||||
-rw-r--r-- | include/openssl/pem.h (renamed from NorthstarDLL/include/openssl/pem.h) | 0 | ||||
-rw-r--r-- | include/openssl/pem2.h (renamed from NorthstarDLL/include/openssl/pem2.h) | 0 | ||||
-rw-r--r-- | include/openssl/pemerr.h (renamed from NorthstarDLL/include/openssl/pemerr.h) | 0 | ||||
-rw-r--r-- | include/openssl/pkcs12.h (renamed from NorthstarDLL/include/openssl/pkcs12.h) | 0 | ||||
-rw-r--r-- | include/openssl/pkcs12.h.in (renamed from NorthstarDLL/include/openssl/pkcs12.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/pkcs12err.h (renamed from NorthstarDLL/include/openssl/pkcs12err.h) | 0 | ||||
-rw-r--r-- | include/openssl/pkcs7.h (renamed from NorthstarDLL/include/openssl/pkcs7.h) | 0 | ||||
-rw-r--r-- | include/openssl/pkcs7.h.in (renamed from NorthstarDLL/include/openssl/pkcs7.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/pkcs7err.h (renamed from NorthstarDLL/include/openssl/pkcs7err.h) | 0 | ||||
-rw-r--r-- | include/openssl/prov_ssl.h (renamed from NorthstarDLL/include/openssl/prov_ssl.h) | 0 | ||||
-rw-r--r-- | include/openssl/proverr.h (renamed from NorthstarDLL/include/openssl/proverr.h) | 0 | ||||
-rw-r--r-- | include/openssl/provider.h (renamed from NorthstarDLL/include/openssl/provider.h) | 0 | ||||
-rw-r--r-- | include/openssl/rand.h (renamed from NorthstarDLL/include/openssl/rand.h) | 0 | ||||
-rw-r--r-- | include/openssl/randerr.h (renamed from NorthstarDLL/include/openssl/randerr.h) | 0 | ||||
-rw-r--r-- | include/openssl/rc2.h (renamed from NorthstarDLL/include/openssl/rc2.h) | 0 | ||||
-rw-r--r-- | include/openssl/rc4.h (renamed from NorthstarDLL/include/openssl/rc4.h) | 0 | ||||
-rw-r--r-- | include/openssl/rc5.h (renamed from NorthstarDLL/include/openssl/rc5.h) | 0 | ||||
-rw-r--r-- | include/openssl/ripemd.h (renamed from NorthstarDLL/include/openssl/ripemd.h) | 0 | ||||
-rw-r--r-- | include/openssl/rsa.h (renamed from NorthstarDLL/include/openssl/rsa.h) | 0 | ||||
-rw-r--r-- | include/openssl/rsaerr.h (renamed from NorthstarDLL/include/openssl/rsaerr.h) | 0 | ||||
-rw-r--r-- | include/openssl/safestack.h (renamed from NorthstarDLL/include/openssl/safestack.h) | 0 | ||||
-rw-r--r-- | include/openssl/safestack.h.in (renamed from NorthstarDLL/include/openssl/safestack.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/seed.h (renamed from NorthstarDLL/include/openssl/seed.h) | 0 | ||||
-rw-r--r-- | include/openssl/self_test.h (renamed from NorthstarDLL/include/openssl/self_test.h) | 0 | ||||
-rw-r--r-- | include/openssl/sha.h (renamed from NorthstarDLL/include/openssl/sha.h) | 0 | ||||
-rw-r--r-- | include/openssl/srp.h (renamed from NorthstarDLL/include/openssl/srp.h) | 0 | ||||
-rw-r--r-- | include/openssl/srp.h.in (renamed from NorthstarDLL/include/openssl/srp.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/srtp.h (renamed from NorthstarDLL/include/openssl/srtp.h) | 0 | ||||
-rw-r--r-- | include/openssl/ssl.h (renamed from NorthstarDLL/include/openssl/ssl.h) | 0 | ||||
-rw-r--r-- | include/openssl/ssl.h.in (renamed from NorthstarDLL/include/openssl/ssl.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/ssl2.h (renamed from NorthstarDLL/include/openssl/ssl2.h) | 0 | ||||
-rw-r--r-- | include/openssl/ssl3.h (renamed from NorthstarDLL/include/openssl/ssl3.h) | 0 | ||||
-rw-r--r-- | include/openssl/sslerr.h (renamed from NorthstarDLL/include/openssl/sslerr.h) | 0 | ||||
-rw-r--r-- | include/openssl/sslerr_legacy.h (renamed from NorthstarDLL/include/openssl/sslerr_legacy.h) | 0 | ||||
-rw-r--r-- | include/openssl/stack.h (renamed from NorthstarDLL/include/openssl/stack.h) | 0 | ||||
-rw-r--r-- | include/openssl/store.h (renamed from NorthstarDLL/include/openssl/store.h) | 0 | ||||
-rw-r--r-- | include/openssl/storeerr.h (renamed from NorthstarDLL/include/openssl/storeerr.h) | 0 | ||||
-rw-r--r-- | include/openssl/symhacks.h (renamed from NorthstarDLL/include/openssl/symhacks.h) | 0 | ||||
-rw-r--r-- | include/openssl/tls1.h (renamed from NorthstarDLL/include/openssl/tls1.h) | 0 | ||||
-rw-r--r-- | include/openssl/trace.h (renamed from NorthstarDLL/include/openssl/trace.h) | 0 | ||||
-rw-r--r-- | include/openssl/ts.h (renamed from NorthstarDLL/include/openssl/ts.h) | 0 | ||||
-rw-r--r-- | include/openssl/tserr.h (renamed from NorthstarDLL/include/openssl/tserr.h) | 0 | ||||
-rw-r--r-- | include/openssl/txt_db.h (renamed from NorthstarDLL/include/openssl/txt_db.h) | 0 | ||||
-rw-r--r-- | include/openssl/types.h (renamed from NorthstarDLL/include/openssl/types.h) | 0 | ||||
-rw-r--r-- | include/openssl/ui.h (renamed from NorthstarDLL/include/openssl/ui.h) | 0 | ||||
-rw-r--r-- | include/openssl/ui.h.in (renamed from NorthstarDLL/include/openssl/ui.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/uierr.h (renamed from NorthstarDLL/include/openssl/uierr.h) | 0 | ||||
-rw-r--r-- | include/openssl/whrlpool.h (renamed from NorthstarDLL/include/openssl/whrlpool.h) | 0 | ||||
-rw-r--r-- | include/openssl/x509.h (renamed from NorthstarDLL/include/openssl/x509.h) | 0 | ||||
-rw-r--r-- | include/openssl/x509.h.in (renamed from NorthstarDLL/include/openssl/x509.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/x509_vfy.h (renamed from NorthstarDLL/include/openssl/x509_vfy.h) | 0 | ||||
-rw-r--r-- | include/openssl/x509_vfy.h.in (renamed from NorthstarDLL/include/openssl/x509_vfy.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/x509err.h (renamed from NorthstarDLL/include/openssl/x509err.h) | 0 | ||||
-rw-r--r-- | include/openssl/x509v3.h (renamed from NorthstarDLL/include/openssl/x509v3.h) | 0 | ||||
-rw-r--r-- | include/openssl/x509v3.h.in (renamed from NorthstarDLL/include/openssl/x509v3.h.in) | 0 | ||||
-rw-r--r-- | include/openssl/x509v3err.h (renamed from NorthstarDLL/include/openssl/x509v3err.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/allocators.h (renamed from NorthstarDLL/include/rapidjson/allocators.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/document.h (renamed from NorthstarDLL/include/rapidjson/document.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/encodedstream.h (renamed from NorthstarDLL/include/rapidjson/encodedstream.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/encodings.h (renamed from NorthstarDLL/include/rapidjson/encodings.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/error/en.h (renamed from NorthstarDLL/include/rapidjson/error/en.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/error/error.h (renamed from NorthstarDLL/include/rapidjson/error/error.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/filereadstream.h (renamed from NorthstarDLL/include/rapidjson/filereadstream.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/filewritestream.h (renamed from NorthstarDLL/include/rapidjson/filewritestream.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/fwd.h (renamed from NorthstarDLL/include/rapidjson/fwd.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/internal/biginteger.h (renamed from NorthstarDLL/include/rapidjson/internal/biginteger.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/internal/diyfp.h (renamed from NorthstarDLL/include/rapidjson/internal/diyfp.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/internal/dtoa.h (renamed from NorthstarDLL/include/rapidjson/internal/dtoa.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/internal/ieee754.h (renamed from NorthstarDLL/include/rapidjson/internal/ieee754.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/internal/itoa.h (renamed from NorthstarDLL/include/rapidjson/internal/itoa.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/internal/meta.h (renamed from NorthstarDLL/include/rapidjson/internal/meta.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/internal/pow10.h (renamed from NorthstarDLL/include/rapidjson/internal/pow10.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/internal/regex.h (renamed from NorthstarDLL/include/rapidjson/internal/regex.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/internal/stack.h (renamed from NorthstarDLL/include/rapidjson/internal/stack.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/internal/strfunc.h (renamed from NorthstarDLL/include/rapidjson/internal/strfunc.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/internal/strtod.h (renamed from NorthstarDLL/include/rapidjson/internal/strtod.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/internal/swap.h (renamed from NorthstarDLL/include/rapidjson/internal/swap.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/istreamwrapper.h (renamed from NorthstarDLL/include/rapidjson/istreamwrapper.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/memorybuffer.h (renamed from NorthstarDLL/include/rapidjson/memorybuffer.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/memorystream.h (renamed from NorthstarDLL/include/rapidjson/memorystream.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/msinttypes/inttypes.h (renamed from NorthstarDLL/include/rapidjson/msinttypes/inttypes.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/msinttypes/stdint.h (renamed from NorthstarDLL/include/rapidjson/msinttypes/stdint.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/ostreamwrapper.h (renamed from NorthstarDLL/include/rapidjson/ostreamwrapper.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/pointer.h (renamed from NorthstarDLL/include/rapidjson/pointer.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/prettywriter.h (renamed from NorthstarDLL/include/rapidjson/prettywriter.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/rapidjson.h (renamed from NorthstarDLL/include/rapidjson/rapidjson.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/reader.h (renamed from NorthstarDLL/include/rapidjson/reader.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/schema.h (renamed from NorthstarDLL/include/rapidjson/schema.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/stream.h (renamed from NorthstarDLL/include/rapidjson/stream.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/stringbuffer.h (renamed from NorthstarDLL/include/rapidjson/stringbuffer.h) | 0 | ||||
-rw-r--r-- | include/rapidjson/writer.h (renamed from NorthstarDLL/include/rapidjson/writer.h) | 0 | ||||
-rw-r--r-- | include/spdlog/async.h (renamed from NorthstarDLL/include/spdlog/async.h) | 0 | ||||
-rw-r--r-- | include/spdlog/async_logger-inl.h (renamed from NorthstarDLL/include/spdlog/async_logger-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/async_logger.h (renamed from NorthstarDLL/include/spdlog/async_logger.h) | 0 | ||||
-rw-r--r-- | include/spdlog/cfg/argv.h (renamed from NorthstarDLL/include/spdlog/cfg/argv.h) | 0 | ||||
-rw-r--r-- | include/spdlog/cfg/env.h (renamed from NorthstarDLL/include/spdlog/cfg/env.h) | 0 | ||||
-rw-r--r-- | include/spdlog/cfg/helpers-inl.h (renamed from NorthstarDLL/include/spdlog/cfg/helpers-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/cfg/helpers.h (renamed from NorthstarDLL/include/spdlog/cfg/helpers.h) | 0 | ||||
-rw-r--r-- | include/spdlog/common-inl.h (renamed from NorthstarDLL/include/spdlog/common-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/common.h (renamed from NorthstarDLL/include/spdlog/common.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/backtracer-inl.h (renamed from NorthstarDLL/include/spdlog/details/backtracer-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/backtracer.h (renamed from NorthstarDLL/include/spdlog/details/backtracer.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/circular_q.h (renamed from NorthstarDLL/include/spdlog/details/circular_q.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/console_globals.h (renamed from NorthstarDLL/include/spdlog/details/console_globals.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/file_helper-inl.h (renamed from NorthstarDLL/include/spdlog/details/file_helper-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/file_helper.h (renamed from NorthstarDLL/include/spdlog/details/file_helper.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/fmt_helper.h (renamed from NorthstarDLL/include/spdlog/details/fmt_helper.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/log_msg-inl.h (renamed from NorthstarDLL/include/spdlog/details/log_msg-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/log_msg.h (renamed from NorthstarDLL/include/spdlog/details/log_msg.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/log_msg_buffer-inl.h (renamed from NorthstarDLL/include/spdlog/details/log_msg_buffer-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/log_msg_buffer.h (renamed from NorthstarDLL/include/spdlog/details/log_msg_buffer.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/mpmc_blocking_q.h (renamed from NorthstarDLL/include/spdlog/details/mpmc_blocking_q.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/null_mutex.h (renamed from NorthstarDLL/include/spdlog/details/null_mutex.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/os-inl.h (renamed from NorthstarDLL/include/spdlog/details/os-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/os.h (renamed from NorthstarDLL/include/spdlog/details/os.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/periodic_worker-inl.h (renamed from NorthstarDLL/include/spdlog/details/periodic_worker-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/periodic_worker.h (renamed from NorthstarDLL/include/spdlog/details/periodic_worker.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/registry-inl.h (renamed from NorthstarDLL/include/spdlog/details/registry-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/registry.h (renamed from NorthstarDLL/include/spdlog/details/registry.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/synchronous_factory.h (renamed from NorthstarDLL/include/spdlog/details/synchronous_factory.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/tcp_client-windows.h (renamed from NorthstarDLL/include/spdlog/details/tcp_client-windows.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/tcp_client.h (renamed from NorthstarDLL/include/spdlog/details/tcp_client.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/thread_pool-inl.h (renamed from NorthstarDLL/include/spdlog/details/thread_pool-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/thread_pool.h (renamed from NorthstarDLL/include/spdlog/details/thread_pool.h) | 0 | ||||
-rw-r--r-- | include/spdlog/details/windows_include.h (renamed from NorthstarDLL/include/spdlog/details/windows_include.h) | 0 | ||||
-rw-r--r-- | include/spdlog/fmt/bin_to_hex.h (renamed from NorthstarDLL/include/spdlog/fmt/bin_to_hex.h) | 0 | ||||
-rw-r--r-- | include/spdlog/fmt/bundled/LICENSE.rst (renamed from NorthstarDLL/include/spdlog/fmt/bundled/LICENSE.rst) | 0 | ||||
-rw-r--r-- | include/spdlog/fmt/bundled/chrono.h (renamed from NorthstarDLL/include/spdlog/fmt/bundled/chrono.h) | 0 | ||||
-rw-r--r-- | include/spdlog/fmt/bundled/color.h (renamed from NorthstarDLL/include/spdlog/fmt/bundled/color.h) | 0 | ||||
-rw-r--r-- | include/spdlog/fmt/bundled/compile.h (renamed from NorthstarDLL/include/spdlog/fmt/bundled/compile.h) | 0 | ||||
-rw-r--r-- | include/spdlog/fmt/bundled/core.h (renamed from NorthstarDLL/include/spdlog/fmt/bundled/core.h) | 0 | ||||
-rw-r--r-- | include/spdlog/fmt/bundled/format-inl.h (renamed from NorthstarDLL/include/spdlog/fmt/bundled/format-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/fmt/bundled/format.h (renamed from NorthstarDLL/include/spdlog/fmt/bundled/format.h) | 0 | ||||
-rw-r--r-- | include/spdlog/fmt/bundled/locale.h (renamed from NorthstarDLL/include/spdlog/fmt/bundled/locale.h) | 0 | ||||
-rw-r--r-- | include/spdlog/fmt/bundled/os.h (renamed from NorthstarDLL/include/spdlog/fmt/bundled/os.h) | 0 | ||||
-rw-r--r-- | include/spdlog/fmt/bundled/ostream.h (renamed from NorthstarDLL/include/spdlog/fmt/bundled/ostream.h) | 0 | ||||
-rw-r--r-- | include/spdlog/fmt/bundled/posix.h (renamed from NorthstarDLL/include/spdlog/fmt/bundled/posix.h) | 0 | ||||
-rw-r--r-- | include/spdlog/fmt/bundled/printf.h (renamed from NorthstarDLL/include/spdlog/fmt/bundled/printf.h) | 0 | ||||
-rw-r--r-- | include/spdlog/fmt/bundled/ranges.h (renamed from NorthstarDLL/include/spdlog/fmt/bundled/ranges.h) | 0 | ||||
-rw-r--r-- | include/spdlog/fmt/chrono.h (renamed from NorthstarDLL/include/spdlog/fmt/chrono.h) | 0 | ||||
-rw-r--r-- | include/spdlog/fmt/fmt.h (renamed from NorthstarDLL/include/spdlog/fmt/fmt.h) | 0 | ||||
-rw-r--r-- | include/spdlog/fmt/ostr.h (renamed from NorthstarDLL/include/spdlog/fmt/ostr.h) | 0 | ||||
-rw-r--r-- | include/spdlog/formatter.h (renamed from NorthstarDLL/include/spdlog/formatter.h) | 0 | ||||
-rw-r--r-- | include/spdlog/fwd.h (renamed from NorthstarDLL/include/spdlog/fwd.h) | 0 | ||||
-rw-r--r-- | include/spdlog/logger-inl.h (renamed from NorthstarDLL/include/spdlog/logger-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/logger.h (renamed from NorthstarDLL/include/spdlog/logger.h) | 0 | ||||
-rw-r--r-- | include/spdlog/pattern_formatter-inl.h (renamed from NorthstarDLL/include/spdlog/pattern_formatter-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/pattern_formatter.h (renamed from NorthstarDLL/include/spdlog/pattern_formatter.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/android_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/android_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/ansicolor_sink-inl.h (renamed from NorthstarDLL/include/spdlog/sinks/ansicolor_sink-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/ansicolor_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/ansicolor_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/base_sink-inl.h (renamed from NorthstarDLL/include/spdlog/sinks/base_sink-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/base_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/base_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/basic_file_sink-inl.h (renamed from NorthstarDLL/include/spdlog/sinks/basic_file_sink-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/basic_file_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/basic_file_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/daily_file_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/daily_file_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/dist_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/dist_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/dup_filter_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/dup_filter_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/hourly_file_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/hourly_file_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/msvc_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/msvc_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/null_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/null_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/ostream_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/ostream_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/ringbuffer_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/ringbuffer_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/rotating_file_sink-inl.h (renamed from NorthstarDLL/include/spdlog/sinks/rotating_file_sink-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/rotating_file_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/rotating_file_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/sink-inl.h (renamed from NorthstarDLL/include/spdlog/sinks/sink-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/sink.h (renamed from NorthstarDLL/include/spdlog/sinks/sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/stdout_color_sinks-inl.h (renamed from NorthstarDLL/include/spdlog/sinks/stdout_color_sinks-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/stdout_color_sinks.h (renamed from NorthstarDLL/include/spdlog/sinks/stdout_color_sinks.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/stdout_sinks-inl.h (renamed from NorthstarDLL/include/spdlog/sinks/stdout_sinks-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/stdout_sinks.h (renamed from NorthstarDLL/include/spdlog/sinks/stdout_sinks.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/syslog_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/syslog_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/systemd_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/systemd_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/tcp_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/tcp_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/win_eventlog_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/win_eventlog_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/wincolor_sink-inl.h (renamed from NorthstarDLL/include/spdlog/sinks/wincolor_sink-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/sinks/wincolor_sink.h (renamed from NorthstarDLL/include/spdlog/sinks/wincolor_sink.h) | 0 | ||||
-rw-r--r-- | include/spdlog/spdlog-inl.h (renamed from NorthstarDLL/include/spdlog/spdlog-inl.h) | 0 | ||||
-rw-r--r-- | include/spdlog/spdlog.h (renamed from NorthstarDLL/include/spdlog/spdlog.h) | 0 | ||||
-rw-r--r-- | include/spdlog/stopwatch.h (renamed from NorthstarDLL/include/spdlog/stopwatch.h) | 0 | ||||
-rw-r--r-- | include/spdlog/tweakme.h (renamed from NorthstarDLL/include/spdlog/tweakme.h) | 0 | ||||
-rw-r--r-- | include/spdlog/version.h (renamed from NorthstarDLL/include/spdlog/version.h) | 0 | ||||
-rw-r--r-- | loader_launcher_proxy/dllmain.cpp | 176 | ||||
-rw-r--r-- | loader_launcher_proxy/framework.h | 7 | ||||
-rw-r--r-- | loader_launcher_proxy/loader_launcher_proxy.vcxproj | 107 | ||||
-rw-r--r-- | loader_launcher_proxy/loader_launcher_proxy.vcxproj.filters | 33 | ||||
-rw-r--r-- | loader_launcher_proxy/pch.cpp | 5 | ||||
-rw-r--r-- | loader_launcher_proxy/pch.h | 13 |
572 files changed, 4685 insertions, 4329 deletions
diff --git a/NorthstarDLL/NorthstarDLL.vcxproj b/NorthstarDLL/NorthstarDLL.vcxproj index 7961ddf4..dc5a3878 100644 --- a/NorthstarDLL/NorthstarDLL.vcxproj +++ b/NorthstarDLL/NorthstarDLL.vcxproj @@ -62,13 +62,13 @@ <PrecompiledHeader>Use</PrecompiledHeader>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
<LanguageStandard>stdcpp20</LanguageStandard>
- <AdditionalIncludeDirectories>$(ProjectDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>$(ProjectDir);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableUAC>false</EnableUAC>
- <AdditionalDependencies>$(ProjectDir)include\MinHook.x64.lib;$(ProjectDir)include\libcurl\lib\libcurl_a.lib;dbghelp.lib;Wldap32.lib;Normaliz.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>$(SolutionDir)include\MinHook.x64.lib;$(SolutionDir)include\libcurl\lib\libcurl_a.lib;dbghelp.lib;Wldap32.lib;Normaliz.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ForceSymbolReferences>
</ForceSymbolReferences>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
@@ -92,7 +92,7 @@ <PrecompiledHeader>Use</PrecompiledHeader>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
<LanguageStandard>stdcpp20</LanguageStandard>
- <AdditionalIncludeDirectories>$(ProjectDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>$(ProjectDir);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<Optimization>Disabled</Optimization>
</ClCompile>
@@ -102,7 +102,7 @@ <OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableUAC>false</EnableUAC>
- <AdditionalDependencies>$(ProjectDir)include\MinHook.x64.lib;$(ProjectDir)include\libcurl\lib\libcurl_a.lib;dbghelp.lib;Wldap32.lib;Normaliz.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>$(SolutionDir)include\MinHook.x64.lib;$(SolutionDir)include\libcurl\lib\libcurl_a.lib;dbghelp.lib;Wldap32.lib;Normaliz.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ForceSymbolReferences>
</ForceSymbolReferences>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
@@ -116,567 +116,426 @@ </PostBuildEvent>
</ItemDefinitionGroup>
<ItemGroup>
- <ClInclude Include="audio.h" />
- <ClInclude Include="bansystem.h" />
- <ClInclude Include="bitbuf.h" />
- <ClInclude Include="bits.h" />
- <ClInclude Include="bots.h" />
- <ClInclude Include="crashhandler.h" />
- <ClInclude Include="keyvalues.h" />
- <ClInclude Include="loghooks.h" />
- <ClInclude Include="squirrelclasstypes.h" />
- <ClInclude Include="squirreldatatypes.h" />
- <ClInclude Include="limits.h" />
- <ClInclude Include="maxplayers.h" />
- <ClInclude Include="memory.h" />
- <ClInclude Include="printcommand.h" />
- <ClInclude Include="hoststate.h" />
- <ClInclude Include="localchatwriter.h" />
- <ClInclude Include="printmaps.h" />
+ <ClInclude Include="..\include\httplib.h" />
+ <ClInclude Include="..\include\libcurl\include\curl\curl.h" />
+ <ClInclude Include="..\include\libcurl\include\curl\curlver.h" />
+ <ClInclude Include="..\include\libcurl\include\curl\easy.h" />
+ <ClInclude Include="..\include\libcurl\include\curl\mprintf.h" />
+ <ClInclude Include="..\include\libcurl\include\curl\multi.h" />
+ <ClInclude Include="..\include\libcurl\include\curl\options.h" />
+ <ClInclude Include="..\include\libcurl\include\curl\stdcheaders.h" />
+ <ClInclude Include="..\include\libcurl\include\curl\system.h" />
+ <ClInclude Include="..\include\libcurl\include\curl\typecheck-gcc.h" />
+ <ClInclude Include="..\include\libcurl\include\curl\urlapi.h" />
+ <ClInclude Include="..\include\MinHook.h" />
+ <ClInclude Include="..\include\openssl\aes.h" />
+ <ClInclude Include="..\include\openssl\asn1.h" />
+ <ClInclude Include="..\include\openssl\asn1err.h" />
+ <ClInclude Include="..\include\openssl\asn1t.h" />
+ <ClInclude Include="..\include\openssl\asn1_mac.h" />
+ <ClInclude Include="..\include\openssl\async.h" />
+ <ClInclude Include="..\include\openssl\asyncerr.h" />
+ <ClInclude Include="..\include\openssl\bio.h" />
+ <ClInclude Include="..\include\openssl\bioerr.h" />
+ <ClInclude Include="..\include\openssl\blowfish.h" />
+ <ClInclude Include="..\include\openssl\bn.h" />
+ <ClInclude Include="..\include\openssl\bnerr.h" />
+ <ClInclude Include="..\include\openssl\buffer.h" />
+ <ClInclude Include="..\include\openssl\buffererr.h" />
+ <ClInclude Include="..\include\openssl\camellia.h" />
+ <ClInclude Include="..\include\openssl\cast.h" />
+ <ClInclude Include="..\include\openssl\cmac.h" />
+ <ClInclude Include="..\include\openssl\cmp.h" />
+ <ClInclude Include="..\include\openssl\cmperr.h" />
+ <ClInclude Include="..\include\openssl\cmp_util.h" />
+ <ClInclude Include="..\include\openssl\cms.h" />
+ <ClInclude Include="..\include\openssl\cmserr.h" />
+ <ClInclude Include="..\include\openssl\comp.h" />
+ <ClInclude Include="..\include\openssl\comperr.h" />
+ <ClInclude Include="..\include\openssl\conf.h" />
+ <ClInclude Include="..\include\openssl\conferr.h" />
+ <ClInclude Include="..\include\openssl\configuration.h" />
+ <ClInclude Include="..\include\openssl\conftypes.h" />
+ <ClInclude Include="..\include\openssl\conf_api.h" />
+ <ClInclude Include="..\include\openssl\core.h" />
+ <ClInclude Include="..\include\openssl\core_dispatch.h" />
+ <ClInclude Include="..\include\openssl\core_names.h" />
+ <ClInclude Include="..\include\openssl\core_object.h" />
+ <ClInclude Include="..\include\openssl\crmf.h" />
+ <ClInclude Include="..\include\openssl\crmferr.h" />
+ <ClInclude Include="..\include\openssl\crypto.h" />
+ <ClInclude Include="..\include\openssl\cryptoerr.h" />
+ <ClInclude Include="..\include\openssl\cryptoerr_legacy.h" />
+ <ClInclude Include="..\include\openssl\ct.h" />
+ <ClInclude Include="..\include\openssl\cterr.h" />
+ <ClInclude Include="..\include\openssl\decoder.h" />
+ <ClInclude Include="..\include\openssl\decodererr.h" />
+ <ClInclude Include="..\include\openssl\des.h" />
+ <ClInclude Include="..\include\openssl\dh.h" />
+ <ClInclude Include="..\include\openssl\dherr.h" />
+ <ClInclude Include="..\include\openssl\dsa.h" />
+ <ClInclude Include="..\include\openssl\dsaerr.h" />
+ <ClInclude Include="..\include\openssl\dtls1.h" />
+ <ClInclude Include="..\include\openssl\ebcdic.h" />
+ <ClInclude Include="..\include\openssl\ec.h" />
+ <ClInclude Include="..\include\openssl\ecdh.h" />
+ <ClInclude Include="..\include\openssl\ecdsa.h" />
+ <ClInclude Include="..\include\openssl\ecerr.h" />
+ <ClInclude Include="..\include\openssl\encoder.h" />
+ <ClInclude Include="..\include\openssl\encodererr.h" />
+ <ClInclude Include="..\include\openssl\engine.h" />
+ <ClInclude Include="..\include\openssl\engineerr.h" />
+ <ClInclude Include="..\include\openssl\err.h" />
+ <ClInclude Include="..\include\openssl\ess.h" />
+ <ClInclude Include="..\include\openssl\esserr.h" />
+ <ClInclude Include="..\include\openssl\evp.h" />
+ <ClInclude Include="..\include\openssl\evperr.h" />
+ <ClInclude Include="..\include\openssl\e_os2.h" />
+ <ClInclude Include="..\include\openssl\fipskey.h" />
+ <ClInclude Include="..\include\openssl\fips_names.h" />
+ <ClInclude Include="..\include\openssl\hmac.h" />
+ <ClInclude Include="..\include\openssl\http.h" />
+ <ClInclude Include="..\include\openssl\httperr.h" />
+ <ClInclude Include="..\include\openssl\idea.h" />
+ <ClInclude Include="..\include\openssl\kdf.h" />
+ <ClInclude Include="..\include\openssl\kdferr.h" />
+ <ClInclude Include="..\include\openssl\lhash.h" />
+ <ClInclude Include="..\include\openssl\macros.h" />
+ <ClInclude Include="..\include\openssl\md2.h" />
+ <ClInclude Include="..\include\openssl\md4.h" />
+ <ClInclude Include="..\include\openssl\md5.h" />
+ <ClInclude Include="..\include\openssl\mdc2.h" />
+ <ClInclude Include="..\include\openssl\modes.h" />
+ <ClInclude Include="..\include\openssl\objects.h" />
+ <ClInclude Include="..\include\openssl\objectserr.h" />
+ <ClInclude Include="..\include\openssl\obj_mac.h" />
+ <ClInclude Include="..\include\openssl\ocsp.h" />
+ <ClInclude Include="..\include\openssl\ocsperr.h" />
+ <ClInclude Include="..\include\openssl\opensslconf.h" />
+ <ClInclude Include="..\include\openssl\opensslv.h" />
+ <ClInclude Include="..\include\openssl\ossl_typ.h" />
+ <ClInclude Include="..\include\openssl\params.h" />
+ <ClInclude Include="..\include\openssl\param_build.h" />
+ <ClInclude Include="..\include\openssl\pem.h" />
+ <ClInclude Include="..\include\openssl\pem2.h" />
+ <ClInclude Include="..\include\openssl\pemerr.h" />
+ <ClInclude Include="..\include\openssl\pkcs12.h" />
+ <ClInclude Include="..\include\openssl\pkcs12err.h" />
+ <ClInclude Include="..\include\openssl\pkcs7.h" />
+ <ClInclude Include="..\include\openssl\pkcs7err.h" />
+ <ClInclude Include="..\include\openssl\proverr.h" />
+ <ClInclude Include="..\include\openssl\provider.h" />
+ <ClInclude Include="..\include\openssl\prov_ssl.h" />
+ <ClInclude Include="..\include\openssl\rand.h" />
+ <ClInclude Include="..\include\openssl\randerr.h" />
+ <ClInclude Include="..\include\openssl\rc2.h" />
+ <ClInclude Include="..\include\openssl\rc4.h" />
+ <ClInclude Include="..\include\openssl\rc5.h" />
+ <ClInclude Include="..\include\openssl\ripemd.h" />
+ <ClInclude Include="..\include\openssl\rsa.h" />
+ <ClInclude Include="..\include\openssl\rsaerr.h" />
+ <ClInclude Include="..\include\openssl\safestack.h" />
+ <ClInclude Include="..\include\openssl\seed.h" />
+ <ClInclude Include="..\include\openssl\self_test.h" />
+ <ClInclude Include="..\include\openssl\sha.h" />
+ <ClInclude Include="..\include\openssl\srp.h" />
+ <ClInclude Include="..\include\openssl\srtp.h" />
+ <ClInclude Include="..\include\openssl\ssl.h" />
+ <ClInclude Include="..\include\openssl\ssl2.h" />
+ <ClInclude Include="..\include\openssl\ssl3.h" />
+ <ClInclude Include="..\include\openssl\sslerr.h" />
+ <ClInclude Include="..\include\openssl\sslerr_legacy.h" />
+ <ClInclude Include="..\include\openssl\stack.h" />
+ <ClInclude Include="..\include\openssl\store.h" />
+ <ClInclude Include="..\include\openssl\storeerr.h" />
+ <ClInclude Include="..\include\openssl\symhacks.h" />
+ <ClInclude Include="..\include\openssl\tls1.h" />
+ <ClInclude Include="..\include\openssl\trace.h" />
+ <ClInclude Include="..\include\openssl\ts.h" />
+ <ClInclude Include="..\include\openssl\tserr.h" />
+ <ClInclude Include="..\include\openssl\txt_db.h" />
+ <ClInclude Include="..\include\openssl\types.h" />
+ <ClInclude Include="..\include\openssl\ui.h" />
+ <ClInclude Include="..\include\openssl\uierr.h" />
+ <ClInclude Include="..\include\openssl\whrlpool.h" />
+ <ClInclude Include="..\include\openssl\x509.h" />
+ <ClInclude Include="..\include\openssl\x509err.h" />
+ <ClInclude Include="..\include\openssl\x509v3.h" />
+ <ClInclude Include="..\include\openssl\x509v3err.h" />
+ <ClInclude Include="..\include\openssl\x509_vfy.h" />
+ <ClInclude Include="..\include\openssl\__DECC_INCLUDE_EPILOGUE.H" />
+ <ClInclude Include="..\include\openssl\__DECC_INCLUDE_PROLOGUE.H" />
+ <ClInclude Include="..\include\rapidjson\allocators.h" />
+ <ClInclude Include="..\include\rapidjson\document.h" />
+ <ClInclude Include="..\include\rapidjson\encodedstream.h" />
+ <ClInclude Include="..\include\rapidjson\encodings.h" />
+ <ClInclude Include="..\include\rapidjson\error\en.h" />
+ <ClInclude Include="..\include\rapidjson\error\error.h" />
+ <ClInclude Include="..\include\rapidjson\filereadstream.h" />
+ <ClInclude Include="..\include\rapidjson\filewritestream.h" />
+ <ClInclude Include="..\include\rapidjson\fwd.h" />
+ <ClInclude Include="..\include\rapidjson\internal\biginteger.h" />
+ <ClInclude Include="..\include\rapidjson\internal\diyfp.h" />
+ <ClInclude Include="..\include\rapidjson\internal\dtoa.h" />
+ <ClInclude Include="..\include\rapidjson\internal\ieee754.h" />
+ <ClInclude Include="..\include\rapidjson\internal\itoa.h" />
+ <ClInclude Include="..\include\rapidjson\internal\meta.h" />
+ <ClInclude Include="..\include\rapidjson\internal\pow10.h" />
+ <ClInclude Include="..\include\rapidjson\internal\regex.h" />
+ <ClInclude Include="..\include\rapidjson\internal\stack.h" />
+ <ClInclude Include="..\include\rapidjson\internal\strfunc.h" />
+ <ClInclude Include="..\include\rapidjson\internal\strtod.h" />
+ <ClInclude Include="..\include\rapidjson\internal\swap.h" />
+ <ClInclude Include="..\include\rapidjson\istreamwrapper.h" />
+ <ClInclude Include="..\include\rapidjson\memorybuffer.h" />
+ <ClInclude Include="..\include\rapidjson\memorystream.h" />
+ <ClInclude Include="..\include\rapidjson\msinttypes\inttypes.h" />
+ <ClInclude Include="..\include\rapidjson\msinttypes\stdint.h" />
+ <ClInclude Include="..\include\rapidjson\ostreamwrapper.h" />
+ <ClInclude Include="..\include\rapidjson\pointer.h" />
+ <ClInclude Include="..\include\rapidjson\prettywriter.h" />
+ <ClInclude Include="..\include\rapidjson\rapidjson.h" />
+ <ClInclude Include="..\include\rapidjson\reader.h" />
+ <ClInclude Include="..\include\rapidjson\schema.h" />
+ <ClInclude Include="..\include\rapidjson\stream.h" />
+ <ClInclude Include="..\include\rapidjson\stringbuffer.h" />
+ <ClInclude Include="..\include\rapidjson\writer.h" />
+ <ClInclude Include="..\include\spdlog\async.h" />
+ <ClInclude Include="..\include\spdlog\async_logger-inl.h" />
+ <ClInclude Include="..\include\spdlog\async_logger.h" />
+ <ClInclude Include="..\include\spdlog\cfg\argv.h" />
+ <ClInclude Include="..\include\spdlog\cfg\env.h" />
+ <ClInclude Include="..\include\spdlog\cfg\helpers-inl.h" />
+ <ClInclude Include="..\include\spdlog\cfg\helpers.h" />
+ <ClInclude Include="..\include\spdlog\common-inl.h" />
+ <ClInclude Include="..\include\spdlog\common.h" />
+ <ClInclude Include="..\include\spdlog\details\backtracer-inl.h" />
+ <ClInclude Include="..\include\spdlog\details\backtracer.h" />
+ <ClInclude Include="..\include\spdlog\details\circular_q.h" />
+ <ClInclude Include="..\include\spdlog\details\console_globals.h" />
+ <ClInclude Include="..\include\spdlog\details\file_helper-inl.h" />
+ <ClInclude Include="..\include\spdlog\details\file_helper.h" />
+ <ClInclude Include="..\include\spdlog\details\fmt_helper.h" />
+ <ClInclude Include="..\include\spdlog\details\log_msg-inl.h" />
+ <ClInclude Include="..\include\spdlog\details\log_msg.h" />
+ <ClInclude Include="..\include\spdlog\details\log_msg_buffer-inl.h" />
+ <ClInclude Include="..\include\spdlog\details\log_msg_buffer.h" />
+ <ClInclude Include="..\include\spdlog\details\mpmc_blocking_q.h" />
+ <ClInclude Include="..\include\spdlog\details\null_mutex.h" />
+ <ClInclude Include="..\include\spdlog\details\os-inl.h" />
+ <ClInclude Include="..\include\spdlog\details\os.h" />
+ <ClInclude Include="..\include\spdlog\details\periodic_worker-inl.h" />
+ <ClInclude Include="..\include\spdlog\details\periodic_worker.h" />
+ <ClInclude Include="..\include\spdlog\details\registry-inl.h" />
+ <ClInclude Include="..\include\spdlog\details\registry.h" />
+ <ClInclude Include="..\include\spdlog\details\synchronous_factory.h" />
+ <ClInclude Include="..\include\spdlog\details\tcp_client-windows.h" />
+ <ClInclude Include="..\include\spdlog\details\tcp_client.h" />
+ <ClInclude Include="..\include\spdlog\details\thread_pool-inl.h" />
+ <ClInclude Include="..\include\spdlog\details\thread_pool.h" />
+ <ClInclude Include="..\include\spdlog\details\windows_include.h" />
+ <ClInclude Include="..\include\spdlog\fmt\bin_to_hex.h" />
+ <ClInclude Include="..\include\spdlog\fmt\bundled\chrono.h" />
+ <ClInclude Include="..\include\spdlog\fmt\bundled\color.h" />
+ <ClInclude Include="..\include\spdlog\fmt\bundled\compile.h" />
+ <ClInclude Include="..\include\spdlog\fmt\bundled\core.h" />
+ <ClInclude Include="..\include\spdlog\fmt\bundled\format-inl.h" />
+ <ClInclude Include="..\include\spdlog\fmt\bundled\format.h" />
+ <ClInclude Include="..\include\spdlog\fmt\bundled\locale.h" />
+ <ClInclude Include="..\include\spdlog\fmt\bundled\os.h" />
+ <ClInclude Include="..\include\spdlog\fmt\bundled\ostream.h" />
+ <ClInclude Include="..\include\spdlog\fmt\bundled\posix.h" />
+ <ClInclude Include="..\include\spdlog\fmt\bundled\printf.h" />
+ <ClInclude Include="..\include\spdlog\fmt\bundled\ranges.h" />
+ <ClInclude Include="..\include\spdlog\fmt\chrono.h" />
+ <ClInclude Include="..\include\spdlog\fmt\fmt.h" />
+ <ClInclude Include="..\include\spdlog\fmt\ostr.h" />
+ <ClInclude Include="..\include\spdlog\formatter.h" />
+ <ClInclude Include="..\include\spdlog\fwd.h" />
+ <ClInclude Include="..\include\spdlog\logger-inl.h" />
+ <ClInclude Include="..\include\spdlog\logger.h" />
+ <ClInclude Include="..\include\spdlog\pattern_formatter-inl.h" />
+ <ClInclude Include="..\include\spdlog\pattern_formatter.h" />
+ <ClInclude Include="..\include\spdlog\sinks\android_sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\ansicolor_sink-inl.h" />
+ <ClInclude Include="..\include\spdlog\sinks\ansicolor_sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\base_sink-inl.h" />
+ <ClInclude Include="..\include\spdlog\sinks\base_sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\basic_file_sink-inl.h" />
+ <ClInclude Include="..\include\spdlog\sinks\basic_file_sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\daily_file_sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\dist_sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\dup_filter_sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\hourly_file_sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\msvc_sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\null_sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\ostream_sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\ringbuffer_sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\rotating_file_sink-inl.h" />
+ <ClInclude Include="..\include\spdlog\sinks\rotating_file_sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\sink-inl.h" />
+ <ClInclude Include="..\include\spdlog\sinks\sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\stdout_color_sinks-inl.h" />
+ <ClInclude Include="..\include\spdlog\sinks\stdout_color_sinks.h" />
+ <ClInclude Include="..\include\spdlog\sinks\stdout_sinks-inl.h" />
+ <ClInclude Include="..\include\spdlog\sinks\stdout_sinks.h" />
+ <ClInclude Include="..\include\spdlog\sinks\syslog_sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\systemd_sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\tcp_sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\wincolor_sink-inl.h" />
+ <ClInclude Include="..\include\spdlog\sinks\wincolor_sink.h" />
+ <ClInclude Include="..\include\spdlog\sinks\win_eventlog_sink.h" />
+ <ClInclude Include="..\include\spdlog\spdlog-inl.h" />
+ <ClInclude Include="..\include\spdlog\spdlog.h" />
+ <ClInclude Include="..\include\spdlog\stopwatch.h" />
+ <ClInclude Include="..\include\spdlog\tweakme.h" />
+ <ClInclude Include="..\include\spdlog\version.h" />
+ <ClInclude Include="client\audio.h" />
+ <ClInclude Include="client\localchatwriter.h" />
+ <ClInclude Include="client\r2client.h" />
+ <ClInclude Include="config\profile.h" />
+ <ClInclude Include="core\convar\concommand.h" />
+ <ClInclude Include="core\convar\convar.h" />
+ <ClInclude Include="core\convar\cvar.h" />
+ <ClInclude Include="core\filesystem\filesystem.h" />
+ <ClInclude Include="core\filesystem\rpakfilesystem.h" />
+ <ClInclude Include="core\hooks.h" />
+ <ClInclude Include="core\macros.h" />
+ <ClInclude Include="core\math\bitbuf.h" />
+ <ClInclude Include="core\math\bits.h" />
+ <ClInclude Include="core\math\color.h" />
+ <ClInclude Include="core\math\vector.h" />
+ <ClInclude Include="core\memalloc.h" />
+ <ClInclude Include="core\memory.h" />
+ <ClInclude Include="core\sourceinterface.h" />
+ <ClInclude Include="core\structs.h" />
+ <ClInclude Include="core\tier0.h" />
+ <ClInclude Include="dedicated\dedicated.h" />
+ <ClInclude Include="dllmain.h" />
+ <ClInclude Include="engine\hoststate.h" />
+ <ClInclude Include="engine\r2engine.h" />
+ <ClInclude Include="exploit_fixes\ns_limits.h" />
+ <ClInclude Include="hooks\hooks.h" />
+ <ClInclude Include="hooks\maxplayers.h" />
+ <ClInclude Include="hooks\memalloc.h" />
+ <ClInclude Include="hooks\memory.h" />
+ <ClInclude Include="hooks\sourceinterface.h" />
+ <ClInclude Include="hooks\tier0.h" />
+ <ClInclude Include="logging\crashhandler.h" />
+ <ClInclude Include="logging\logging.h" />
+ <ClInclude Include="logging\loghooks.h" />
+ <ClInclude Include="logging\sourceconsole.h" />
+ <ClInclude Include="masterserver\masterserver.h" />
+ <ClInclude Include="mods\modmanager.h" />
<ClInclude Include="ns_version.h" />
- <ClInclude Include="plugins.h" />
- <ClInclude Include="plugin_abi.h" />
- <ClInclude Include="r2client.h" />
- <ClInclude Include="r2engine.h" />
- <ClInclude Include="r2server.h" />
- <ClInclude Include="serverchathooks.h" />
- <ClInclude Include="color.h" />
- <ClInclude Include="concommand.h" />
- <ClInclude Include="nsprefix.h" />
- <ClInclude Include="convar.h" />
- <ClInclude Include="cvar.h" />
- <ClInclude Include="dedicated.h" />
- <ClInclude Include="filesystem.h" />
- <ClInclude Include="hooks.h" />
- <ClInclude Include="include\crypto\aes_platform.h" />
- <ClInclude Include="include\crypto\aria.h" />
- <ClInclude Include="include\crypto\asn1.h" />
- <ClInclude Include="include\crypto\asn1err.h" />
- <ClInclude Include="include\crypto\asn1_dsa.h" />
- <ClInclude Include="include\crypto\async.h" />
- <ClInclude Include="include\crypto\asyncerr.h" />
- <ClInclude Include="include\crypto\bioerr.h" />
- <ClInclude Include="include\crypto\bn.h" />
- <ClInclude Include="include\crypto\bnerr.h" />
- <ClInclude Include="include\crypto\bn_conf.h" />
- <ClInclude Include="include\crypto\bn_dh.h" />
- <ClInclude Include="include\crypto\bn_srp.h" />
- <ClInclude Include="include\crypto\buffererr.h" />
- <ClInclude Include="include\crypto\chacha.h" />
- <ClInclude Include="include\crypto\cmll_platform.h" />
- <ClInclude Include="include\crypto\cmperr.h" />
- <ClInclude Include="include\crypto\cmserr.h" />
- <ClInclude Include="include\crypto\comperr.h" />
- <ClInclude Include="include\crypto\conferr.h" />
- <ClInclude Include="include\crypto\crmferr.h" />
- <ClInclude Include="include\crypto\cryptlib.h" />
- <ClInclude Include="include\crypto\cryptoerr.h" />
- <ClInclude Include="include\crypto\cterr.h" />
- <ClInclude Include="include\crypto\ctype.h" />
- <ClInclude Include="include\crypto\decoder.h" />
- <ClInclude Include="include\crypto\decodererr.h" />
- <ClInclude Include="include\crypto\des_platform.h" />
- <ClInclude Include="include\crypto\dh.h" />
- <ClInclude Include="include\crypto\dherr.h" />
- <ClInclude Include="include\crypto\dsa.h" />
- <ClInclude Include="include\crypto\dsaerr.h" />
- <ClInclude Include="include\crypto\dso_conf.h" />
- <ClInclude Include="include\crypto\ec.h" />
- <ClInclude Include="include\crypto\ecerr.h" />
- <ClInclude Include="include\crypto\ecx.h" />
- <ClInclude Include="include\crypto\encoder.h" />
- <ClInclude Include="include\crypto\encodererr.h" />
- <ClInclude Include="include\crypto\engine.h" />
- <ClInclude Include="include\crypto\engineerr.h" />
- <ClInclude Include="include\crypto\err.h" />
- <ClInclude Include="include\crypto\ess.h" />
- <ClInclude Include="include\crypto\esserr.h" />
- <ClInclude Include="include\crypto\evp.h" />
- <ClInclude Include="include\crypto\evperr.h" />
- <ClInclude Include="include\crypto\httperr.h" />
- <ClInclude Include="include\crypto\lhash.h" />
- <ClInclude Include="include\crypto\md32_common.h" />
- <ClInclude Include="include\crypto\modes.h" />
- <ClInclude Include="include\crypto\objects.h" />
- <ClInclude Include="include\crypto\objectserr.h" />
- <ClInclude Include="include\crypto\ocsperr.h" />
- <ClInclude Include="include\crypto\pem.h" />
- <ClInclude Include="include\crypto\pemerr.h" />
- <ClInclude Include="include\crypto\pkcs12err.h" />
- <ClInclude Include="include\crypto\pkcs7.h" />
- <ClInclude Include="include\crypto\pkcs7err.h" />
- <ClInclude Include="include\crypto\poly1305.h" />
- <ClInclude Include="include\crypto\ppc_arch.h" />
- <ClInclude Include="include\crypto\punycode.h" />
- <ClInclude Include="include\crypto\rand.h" />
- <ClInclude Include="include\crypto\randerr.h" />
- <ClInclude Include="include\crypto\rand_pool.h" />
- <ClInclude Include="include\crypto\rsa.h" />
- <ClInclude Include="include\crypto\rsaerr.h" />
- <ClInclude Include="include\crypto\security_bits.h" />
- <ClInclude Include="include\crypto\sha.h" />
- <ClInclude Include="include\crypto\siphash.h" />
- <ClInclude Include="include\crypto\siv.h" />
- <ClInclude Include="include\crypto\sm2.h" />
- <ClInclude Include="include\crypto\sm2err.h" />
- <ClInclude Include="include\crypto\sm4.h" />
- <ClInclude Include="include\crypto\sparc_arch.h" />
- <ClInclude Include="include\crypto\sparse_array.h" />
- <ClInclude Include="include\crypto\store.h" />
- <ClInclude Include="include\crypto\storeerr.h" />
- <ClInclude Include="include\crypto\tserr.h" />
- <ClInclude Include="include\crypto\types.h" />
- <ClInclude Include="include\crypto\uierr.h" />
- <ClInclude Include="include\crypto\x509.h" />
- <ClInclude Include="include\crypto\x509err.h" />
- <ClInclude Include="include\crypto\x509v3err.h" />
- <ClInclude Include="include\crypto\__DECC_INCLUDE_EPILOGUE.H" />
- <ClInclude Include="include\crypto\__DECC_INCLUDE_PROLOGUE.H" />
- <ClInclude Include="include\httplib.h" />
- <ClInclude Include="include\internal\asn1.h" />
- <ClInclude Include="include\internal\bio.h" />
- <ClInclude Include="include\internal\comp.h" />
- <ClInclude Include="include\internal\conf.h" />
- <ClInclude Include="include\internal\constant_time.h" />
- <ClInclude Include="include\internal\core.h" />
- <ClInclude Include="include\internal\cryptlib.h" />
- <ClInclude Include="include\internal\dane.h" />
- <ClInclude Include="include\internal\deprecated.h" />
- <ClInclude Include="include\internal\der.h" />
- <ClInclude Include="include\internal\dso.h" />
- <ClInclude Include="include\internal\dsoerr.h" />
- <ClInclude Include="include\internal\endian.h" />
- <ClInclude Include="include\internal\err.h" />
- <ClInclude Include="include\internal\ffc.h" />
- <ClInclude Include="include\internal\ktls.h" />
- <ClInclude Include="include\internal\namemap.h" />
- <ClInclude Include="include\internal\nelem.h" />
- <ClInclude Include="include\internal\numbers.h" />
- <ClInclude Include="include\internal\o_dir.h" />
- <ClInclude Include="include\internal\packet.h" />
- <ClInclude Include="include\internal\param_build_set.h" />
- <ClInclude Include="include\internal\passphrase.h" />
- <ClInclude Include="include\internal\property.h" />
- <ClInclude Include="include\internal\propertyerr.h" />
- <ClInclude Include="include\internal\provider.h" />
- <ClInclude Include="include\internal\refcount.h" />
- <ClInclude Include="include\internal\sha3.h" />
- <ClInclude Include="include\internal\sizes.h" />
- <ClInclude Include="include\internal\sm3.h" />
- <ClInclude Include="include\internal\sockets.h" />
- <ClInclude Include="include\internal\sslconf.h" />
- <ClInclude Include="include\internal\symhacks.h" />
- <ClInclude Include="include\internal\thread_once.h" />
- <ClInclude Include="include\internal\tlsgroups.h" />
- <ClInclude Include="include\internal\tsan_assist.h" />
- <ClInclude Include="include\internal\unicode.h" />
- <ClInclude Include="include\internal\__DECC_INCLUDE_EPILOGUE.H" />
- <ClInclude Include="include\internal\__DECC_INCLUDE_PROLOGUE.H" />
- <ClInclude Include="include\libcurl\include\curl\curl.h" />
- <ClInclude Include="include\libcurl\include\curl\curlver.h" />
- <ClInclude Include="include\libcurl\include\curl\easy.h" />
- <ClInclude Include="include\libcurl\include\curl\mprintf.h" />
- <ClInclude Include="include\libcurl\include\curl\multi.h" />
- <ClInclude Include="include\libcurl\include\curl\options.h" />
- <ClInclude Include="include\libcurl\include\curl\stdcheaders.h" />
- <ClInclude Include="include\libcurl\include\curl\system.h" />
- <ClInclude Include="include\libcurl\include\curl\typecheck-gcc.h" />
- <ClInclude Include="include\libcurl\include\curl\urlapi.h" />
- <ClInclude Include="include\MinHook.h" />
- <ClInclude Include="include\openssl\aes.h" />
- <ClInclude Include="include\openssl\asn1.h" />
- <ClInclude Include="include\openssl\asn1err.h" />
- <ClInclude Include="include\openssl\asn1t.h" />
- <ClInclude Include="include\openssl\asn1_mac.h" />
- <ClInclude Include="include\openssl\async.h" />
- <ClInclude Include="include\openssl\asyncerr.h" />
- <ClInclude Include="include\openssl\bio.h" />
- <ClInclude Include="include\openssl\bioerr.h" />
- <ClInclude Include="include\openssl\blowfish.h" />
- <ClInclude Include="include\openssl\bn.h" />
- <ClInclude Include="include\openssl\bnerr.h" />
- <ClInclude Include="include\openssl\buffer.h" />
- <ClInclude Include="include\openssl\buffererr.h" />
- <ClInclude Include="include\openssl\camellia.h" />
- <ClInclude Include="include\openssl\cast.h" />
- <ClInclude Include="include\openssl\cmac.h" />
- <ClInclude Include="include\openssl\cmp.h" />
- <ClInclude Include="include\openssl\cmperr.h" />
- <ClInclude Include="include\openssl\cmp_util.h" />
- <ClInclude Include="include\openssl\cms.h" />
- <ClInclude Include="include\openssl\cmserr.h" />
- <ClInclude Include="include\openssl\comp.h" />
- <ClInclude Include="include\openssl\comperr.h" />
- <ClInclude Include="include\openssl\conf.h" />
- <ClInclude Include="include\openssl\conferr.h" />
- <ClInclude Include="include\openssl\configuration.h" />
- <ClInclude Include="include\openssl\conftypes.h" />
- <ClInclude Include="include\openssl\conf_api.h" />
- <ClInclude Include="include\openssl\core.h" />
- <ClInclude Include="include\openssl\core_dispatch.h" />
- <ClInclude Include="include\openssl\core_names.h" />
- <ClInclude Include="include\openssl\core_object.h" />
- <ClInclude Include="include\openssl\crmf.h" />
- <ClInclude Include="include\openssl\crmferr.h" />
- <ClInclude Include="include\openssl\crypto.h" />
- <ClInclude Include="include\openssl\cryptoerr.h" />
- <ClInclude Include="include\openssl\cryptoerr_legacy.h" />
- <ClInclude Include="include\openssl\ct.h" />
- <ClInclude Include="include\openssl\cterr.h" />
- <ClInclude Include="include\openssl\decoder.h" />
- <ClInclude Include="include\openssl\decodererr.h" />
- <ClInclude Include="include\openssl\des.h" />
- <ClInclude Include="include\openssl\dh.h" />
- <ClInclude Include="include\openssl\dherr.h" />
- <ClInclude Include="include\openssl\dsa.h" />
- <ClInclude Include="include\openssl\dsaerr.h" />
- <ClInclude Include="include\openssl\dtls1.h" />
- <ClInclude Include="include\openssl\ebcdic.h" />
- <ClInclude Include="include\openssl\ec.h" />
- <ClInclude Include="include\openssl\ecdh.h" />
- <ClInclude Include="include\openssl\ecdsa.h" />
- <ClInclude Include="include\openssl\ecerr.h" />
- <ClInclude Include="include\openssl\encoder.h" />
- <ClInclude Include="include\openssl\encodererr.h" />
- <ClInclude Include="include\openssl\engine.h" />
- <ClInclude Include="include\openssl\engineerr.h" />
- <ClInclude Include="include\openssl\err.h" />
- <ClInclude Include="include\openssl\ess.h" />
- <ClInclude Include="include\openssl\esserr.h" />
- <ClInclude Include="include\openssl\evp.h" />
- <ClInclude Include="include\openssl\evperr.h" />
- <ClInclude Include="include\openssl\e_os2.h" />
- <ClInclude Include="include\openssl\fipskey.h" />
- <ClInclude Include="include\openssl\fips_names.h" />
- <ClInclude Include="include\openssl\hmac.h" />
- <ClInclude Include="include\openssl\http.h" />
- <ClInclude Include="include\openssl\httperr.h" />
- <ClInclude Include="include\openssl\idea.h" />
- <ClInclude Include="include\openssl\kdf.h" />
- <ClInclude Include="include\openssl\kdferr.h" />
- <ClInclude Include="include\openssl\lhash.h" />
- <ClInclude Include="include\openssl\macros.h" />
- <ClInclude Include="include\openssl\md2.h" />
- <ClInclude Include="include\openssl\md4.h" />
- <ClInclude Include="include\openssl\md5.h" />
- <ClInclude Include="include\openssl\mdc2.h" />
- <ClInclude Include="include\openssl\modes.h" />
- <ClInclude Include="include\openssl\objects.h" />
- <ClInclude Include="include\openssl\objectserr.h" />
- <ClInclude Include="include\openssl\obj_mac.h" />
- <ClInclude Include="include\openssl\ocsp.h" />
- <ClInclude Include="include\openssl\ocsperr.h" />
- <ClInclude Include="include\openssl\opensslconf.h" />
- <ClInclude Include="include\openssl\opensslv.h" />
- <ClInclude Include="include\openssl\ossl_typ.h" />
- <ClInclude Include="include\openssl\params.h" />
- <ClInclude Include="include\openssl\param_build.h" />
- <ClInclude Include="include\openssl\pem.h" />
- <ClInclude Include="include\openssl\pem2.h" />
- <ClInclude Include="include\openssl\pemerr.h" />
- <ClInclude Include="include\openssl\pkcs12.h" />
- <ClInclude Include="include\openssl\pkcs12err.h" />
- <ClInclude Include="include\openssl\pkcs7.h" />
- <ClInclude Include="include\openssl\pkcs7err.h" />
- <ClInclude Include="include\openssl\proverr.h" />
- <ClInclude Include="include\openssl\provider.h" />
- <ClInclude Include="include\openssl\prov_ssl.h" />
- <ClInclude Include="include\openssl\rand.h" />
- <ClInclude Include="include\openssl\randerr.h" />
- <ClInclude Include="include\openssl\rc2.h" />
- <ClInclude Include="include\openssl\rc4.h" />
- <ClInclude Include="include\openssl\rc5.h" />
- <ClInclude Include="include\openssl\ripemd.h" />
- <ClInclude Include="include\openssl\rsa.h" />
- <ClInclude Include="include\openssl\rsaerr.h" />
- <ClInclude Include="include\openssl\safestack.h" />
- <ClInclude Include="include\openssl\seed.h" />
- <ClInclude Include="include\openssl\self_test.h" />
- <ClInclude Include="include\openssl\sha.h" />
- <ClInclude Include="include\openssl\srp.h" />
- <ClInclude Include="include\openssl\srtp.h" />
- <ClInclude Include="include\openssl\ssl.h" />
- <ClInclude Include="include\openssl\ssl2.h" />
- <ClInclude Include="include\openssl\ssl3.h" />
- <ClInclude Include="include\openssl\sslerr.h" />
- <ClInclude Include="include\openssl\sslerr_legacy.h" />
- <ClInclude Include="include\openssl\stack.h" />
- <ClInclude Include="include\openssl\store.h" />
- <ClInclude Include="include\openssl\storeerr.h" />
- <ClInclude Include="include\openssl\symhacks.h" />
- <ClInclude Include="include\openssl\tls1.h" />
- <ClInclude Include="include\openssl\trace.h" />
- <ClInclude Include="include\openssl\ts.h" />
- <ClInclude Include="include\openssl\tserr.h" />
- <ClInclude Include="include\openssl\txt_db.h" />
- <ClInclude Include="include\openssl\types.h" />
- <ClInclude Include="include\openssl\ui.h" />
- <ClInclude Include="include\openssl\uierr.h" />
- <ClInclude Include="include\openssl\whrlpool.h" />
- <ClInclude Include="include\openssl\x509.h" />
- <ClInclude Include="include\openssl\x509err.h" />
- <ClInclude Include="include\openssl\x509v3.h" />
- <ClInclude Include="include\openssl\x509v3err.h" />
- <ClInclude Include="include\openssl\x509_vfy.h" />
- <ClInclude Include="include\openssl\__DECC_INCLUDE_EPILOGUE.H" />
- <ClInclude Include="include\openssl\__DECC_INCLUDE_PROLOGUE.H" />
- <ClInclude Include="include\rapidjson\allocators.h" />
- <ClInclude Include="include\rapidjson\document.h" />
- <ClInclude Include="include\rapidjson\encodedstream.h" />
- <ClInclude Include="include\rapidjson\encodings.h" />
- <ClInclude Include="include\rapidjson\error\en.h" />
- <ClInclude Include="include\rapidjson\error\error.h" />
- <ClInclude Include="include\rapidjson\filereadstream.h" />
- <ClInclude Include="include\rapidjson\filewritestream.h" />
- <ClInclude Include="include\rapidjson\fwd.h" />
- <ClInclude Include="include\rapidjson\internal\biginteger.h" />
- <ClInclude Include="include\rapidjson\internal\diyfp.h" />
- <ClInclude Include="include\rapidjson\internal\dtoa.h" />
- <ClInclude Include="include\rapidjson\internal\ieee754.h" />
- <ClInclude Include="include\rapidjson\internal\itoa.h" />
- <ClInclude Include="include\rapidjson\internal\meta.h" />
- <ClInclude Include="include\rapidjson\internal\pow10.h" />
- <ClInclude Include="include\rapidjson\internal\regex.h" />
- <ClInclude Include="include\rapidjson\internal\stack.h" />
- <ClInclude Include="include\rapidjson\internal\strfunc.h" />
- <ClInclude Include="include\rapidjson\internal\strtod.h" />
- <ClInclude Include="include\rapidjson\internal\swap.h" />
- <ClInclude Include="include\rapidjson\istreamwrapper.h" />
- <ClInclude Include="include\rapidjson\memorybuffer.h" />
- <ClInclude Include="include\rapidjson\memorystream.h" />
- <ClInclude Include="include\rapidjson\msinttypes\inttypes.h" />
- <ClInclude Include="include\rapidjson\msinttypes\stdint.h" />
- <ClInclude Include="include\rapidjson\ostreamwrapper.h" />
- <ClInclude Include="include\rapidjson\pointer.h" />
- <ClInclude Include="include\rapidjson\prettywriter.h" />
- <ClInclude Include="include\rapidjson\rapidjson.h" />
- <ClInclude Include="include\rapidjson\reader.h" />
- <ClInclude Include="include\rapidjson\schema.h" />
- <ClInclude Include="include\rapidjson\stream.h" />
- <ClInclude Include="include\rapidjson\stringbuffer.h" />
- <ClInclude Include="include\rapidjson\writer.h" />
- <ClInclude Include="include\spdlog\async.h" />
- <ClInclude Include="include\spdlog\async_logger-inl.h" />
- <ClInclude Include="include\spdlog\async_logger.h" />
- <ClInclude Include="include\spdlog\cfg\argv.h" />
- <ClInclude Include="include\spdlog\cfg\env.h" />
- <ClInclude Include="include\spdlog\cfg\helpers-inl.h" />
- <ClInclude Include="include\spdlog\cfg\helpers.h" />
- <ClInclude Include="include\spdlog\common-inl.h" />
- <ClInclude Include="include\spdlog\common.h" />
- <ClInclude Include="include\spdlog\details\backtracer-inl.h" />
- <ClInclude Include="include\spdlog\details\backtracer.h" />
- <ClInclude Include="include\spdlog\details\circular_q.h" />
- <ClInclude Include="include\spdlog\details\console_globals.h" />
- <ClInclude Include="include\spdlog\details\file_helper-inl.h" />
- <ClInclude Include="include\spdlog\details\file_helper.h" />
- <ClInclude Include="include\spdlog\details\fmt_helper.h" />
- <ClInclude Include="include\spdlog\details\log_msg-inl.h" />
- <ClInclude Include="include\spdlog\details\log_msg.h" />
- <ClInclude Include="include\spdlog\details\log_msg_buffer-inl.h" />
- <ClInclude Include="include\spdlog\details\log_msg_buffer.h" />
- <ClInclude Include="include\spdlog\details\mpmc_blocking_q.h" />
- <ClInclude Include="include\spdlog\details\null_mutex.h" />
- <ClInclude Include="include\spdlog\details\os-inl.h" />
- <ClInclude Include="include\spdlog\details\os.h" />
- <ClInclude Include="include\spdlog\details\periodic_worker-inl.h" />
- <ClInclude Include="include\spdlog\details\periodic_worker.h" />
- <ClInclude Include="include\spdlog\details\registry-inl.h" />
- <ClInclude Include="include\spdlog\details\registry.h" />
- <ClInclude Include="include\spdlog\details\synchronous_factory.h" />
- <ClInclude Include="include\spdlog\details\tcp_client-windows.h" />
- <ClInclude Include="include\spdlog\details\tcp_client.h" />
- <ClInclude Include="include\spdlog\details\thread_pool-inl.h" />
- <ClInclude Include="include\spdlog\details\thread_pool.h" />
- <ClInclude Include="include\spdlog\details\windows_include.h" />
- <ClInclude Include="include\spdlog\fmt\bin_to_hex.h" />
- <ClInclude Include="include\spdlog\fmt\bundled\chrono.h" />
- <ClInclude Include="include\spdlog\fmt\bundled\color.h" />
- <ClInclude Include="include\spdlog\fmt\bundled\compile.h" />
- <ClInclude Include="include\spdlog\fmt\bundled\core.h" />
- <ClInclude Include="include\spdlog\fmt\bundled\format-inl.h" />
- <ClInclude Include="include\spdlog\fmt\bundled\format.h" />
- <ClInclude Include="include\spdlog\fmt\bundled\locale.h" />
- <ClInclude Include="include\spdlog\fmt\bundled\os.h" />
- <ClInclude Include="include\spdlog\fmt\bundled\ostream.h" />
- <ClInclude Include="include\spdlog\fmt\bundled\posix.h" />
- <ClInclude Include="include\spdlog\fmt\bundled\printf.h" />
- <ClInclude Include="include\spdlog\fmt\bundled\ranges.h" />
- <ClInclude Include="include\spdlog\fmt\chrono.h" />
- <ClInclude Include="include\spdlog\fmt\fmt.h" />
- <ClInclude Include="include\spdlog\fmt\ostr.h" />
- <ClInclude Include="include\spdlog\formatter.h" />
- <ClInclude Include="include\spdlog\fwd.h" />
- <ClInclude Include="include\spdlog\logger-inl.h" />
- <ClInclude Include="include\spdlog\logger.h" />
- <ClInclude Include="include\spdlog\pattern_formatter-inl.h" />
- <ClInclude Include="include\spdlog\pattern_formatter.h" />
- <ClInclude Include="include\spdlog\sinks\android_sink.h" />
- <ClInclude Include="include\spdlog\sinks\ansicolor_sink-inl.h" />
- <ClInclude Include="include\spdlog\sinks\ansicolor_sink.h" />
- <ClInclude Include="include\spdlog\sinks\base_sink-inl.h" />
- <ClInclude Include="include\spdlog\sinks\base_sink.h" />
- <ClInclude Include="include\spdlog\sinks\basic_file_sink-inl.h" />
- <ClInclude Include="include\spdlog\sinks\basic_file_sink.h" />
- <ClInclude Include="include\spdlog\sinks\daily_file_sink.h" />
- <ClInclude Include="include\spdlog\sinks\dist_sink.h" />
- <ClInclude Include="include\spdlog\sinks\dup_filter_sink.h" />
- <ClInclude Include="include\spdlog\sinks\hourly_file_sink.h" />
- <ClInclude Include="include\spdlog\sinks\msvc_sink.h" />
- <ClInclude Include="include\spdlog\sinks\null_sink.h" />
- <ClInclude Include="include\spdlog\sinks\ostream_sink.h" />
- <ClInclude Include="include\spdlog\sinks\ringbuffer_sink.h" />
- <ClInclude Include="include\spdlog\sinks\rotating_file_sink-inl.h" />
- <ClInclude Include="include\spdlog\sinks\rotating_file_sink.h" />
- <ClInclude Include="include\spdlog\sinks\sink-inl.h" />
- <ClInclude Include="include\spdlog\sinks\sink.h" />
- <ClInclude Include="include\spdlog\sinks\stdout_color_sinks-inl.h" />
- <ClInclude Include="include\spdlog\sinks\stdout_color_sinks.h" />
- <ClInclude Include="include\spdlog\sinks\stdout_sinks-inl.h" />
- <ClInclude Include="include\spdlog\sinks\stdout_sinks.h" />
- <ClInclude Include="include\spdlog\sinks\syslog_sink.h" />
- <ClInclude Include="include\spdlog\sinks\systemd_sink.h" />
- <ClInclude Include="include\spdlog\sinks\tcp_sink.h" />
- <ClInclude Include="include\spdlog\sinks\wincolor_sink-inl.h" />
- <ClInclude Include="include\spdlog\sinks\wincolor_sink.h" />
- <ClInclude Include="include\spdlog\sinks\win_eventlog_sink.h" />
- <ClInclude Include="include\spdlog\spdlog-inl.h" />
- <ClInclude Include="include\spdlog\spdlog.h" />
- <ClInclude Include="include\spdlog\stopwatch.h" />
- <ClInclude Include="include\spdlog\tweakme.h" />
- <ClInclude Include="include\spdlog\version.h" />
- <ClInclude Include="logging.h" />
- <ClInclude Include="main.h" />
- <ClInclude Include="masterserver.h" />
- <ClInclude Include="memalloc.h" />
- <ClInclude Include="misccommands.h" />
- <ClInclude Include="modmanager.h" />
<ClInclude Include="pch.h" />
- <ClInclude Include="playlist.h" />
- <ClInclude Include="rpakfilesystem.h" />
- <ClInclude Include="serverauthentication.h" />
- <ClInclude Include="serverpresence.h" />
- <ClInclude Include="sourceconsole.h" />
- <ClInclude Include="sourceinterface.h" />
- <ClInclude Include="squirrel.h" />
- <ClInclude Include="exploitfixes_utf8parser.cpp" />
- <ClInclude Include="structs.h" />
- <ClInclude Include="squirrelautobind.h" />
- <ClInclude Include="tier0.h" />
- <ClInclude Include="vector.h" />
- <ClInclude Include="version.h" />
+ <ClInclude Include="plugins\plugins.h" />
+ <ClInclude Include="plugins\plugin_abi.h" />
+ <ClInclude Include="scripts\scripthttprequesthandler.h" />
+ <ClInclude Include="server\auth\bansystem.h" />
+ <ClInclude Include="server\auth\serverauthentication.h" />
+ <ClInclude Include="server\bots.h" />
+ <ClInclude Include="server\r2server.h" />
+ <ClInclude Include="server\serverchathooks.h" />
+ <ClInclude Include="server\serverpresence.h" />
+ <ClInclude Include="shared\keyvalues.h" />
+ <ClInclude Include="shared\maxplayers.h" />
+ <ClInclude Include="shared\misccommands.h" />
+ <ClInclude Include="shared\playlist.h" />
+ <ClInclude Include="squirrel\squirrel.h" />
+ <ClInclude Include="squirrel\squirrelautobind.h" />
+ <ClInclude Include="squirrel\squirrelclasstypes.h" />
+ <ClInclude Include="squirrel\squirreldatatypes.h" />
+ <ClInclude Include="util\version.h" />
</ItemGroup>
<ItemGroup>
- <ClCompile Include="audio.cpp" />
- <ClCompile Include="bansystem.cpp" />
- <ClCompile Include="bits.cpp" />
- <ClCompile Include="bots.cpp" />
- <ClCompile Include="buildainfile.cpp" />
- <ClCompile Include="chatcommand.cpp" />
- <ClCompile Include="clientauthhooks.cpp" />
- <ClCompile Include="clientchathooks.cpp" />
- <ClCompile Include="clientruihooks.cpp" />
- <ClCompile Include="clientvideooverrides.cpp" />
- <ClCompile Include="concommand.cpp" />
- <ClCompile Include="diskvmtfixes.cpp" />
- <ClCompile Include="exploitfixes_lzss.cpp" />
- <ClCompile Include="kb_act.cpp" />
- <ClCompile Include="keyvalues.cpp" />
- <ClCompile Include="limits.cpp" />
- <ClCompile Include="color.cpp" />
- <ClCompile Include="loghooks.cpp" />
- <ClCompile Include="memory.cpp" />
- <ClCompile Include="nsprefix.cpp" />
- <ClCompile Include="convar.cpp" />
- <ClCompile Include="crashhandler.cpp" />
- <ClCompile Include="cvar.cpp" />
- <ClCompile Include="debugoverlay.cpp" />
- <ClCompile Include="dedicated.cpp" />
- <ClCompile Include="dedicatedmaterialsystem.cpp" />
- <ClCompile Include="demofixes.cpp" />
- <ClCompile Include="dllmain.cpp" />
- <ClCompile Include="filesystem.cpp" />
- <ClCompile Include="hooks.cpp" />
- <ClCompile Include="host.cpp" />
- <ClCompile Include="hoststate.cpp" />
- <ClCompile Include="modkeyvalues.cpp" />
- <ClCompile Include="latencyflex.cpp" />
- <ClCompile Include="localchatwriter.cpp" />
- <ClCompile Include="printmaps.cpp" />
- <ClCompile Include="maxplayers.cpp" />
- <ClCompile Include="languagehooks.cpp" />
- <ClCompile Include="memalloc.cpp" />
- <ClCompile Include="misccommands.cpp" />
- <ClCompile Include="miscserverfixes.cpp" />
- <ClCompile Include="modlocalisation.cpp" />
- <ClCompile Include="logging.cpp" />
- <ClCompile Include="masterserver.cpp" />
- <ClCompile Include="modmanager.cpp" />
+ <None Include="..\include\spdlog\fmt\bundled\LICENSE.rst" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="client\audio.cpp" />
+ <ClCompile Include="client\chatcommand.cpp" />
+ <ClCompile Include="client\clientauthhooks.cpp" />
+ <ClCompile Include="client\clientruihooks.cpp" />
+ <ClCompile Include="client\clientvideooverrides.cpp" />
+ <ClCompile Include="client\rejectconnectionfixes.cpp" />
+ <ClCompile Include="client\debugoverlay.cpp" />
+ <ClCompile Include="client\demofixes.cpp" />
+ <ClCompile Include="client\diskvmtfixes.cpp" />
+ <ClCompile Include="client\languagehooks.cpp" />
+ <ClCompile Include="client\latencyflex.cpp" />
+ <ClCompile Include="client\localchatwriter.cpp" />
+ <ClCompile Include="client\modlocalisation.cpp" />
+ <ClCompile Include="client\r2client.cpp" />
+ <ClCompile Include="config\profile.cpp" />
+ <ClCompile Include="core\convar\concommand.cpp" />
+ <ClCompile Include="core\convar\convar.cpp" />
+ <ClCompile Include="core\convar\cvar.cpp" />
+ <ClCompile Include="core\filesystem\filesystem.cpp" />
+ <ClCompile Include="core\filesystem\rpakfilesystem.cpp" />
+ <ClCompile Include="core\hooks.cpp" />
+ <ClCompile Include="core\math\bits.cpp" />
+ <ClCompile Include="core\math\color.cpp" />
+ <ClCompile Include="core\memalloc.cpp" />
+ <ClCompile Include="core\memory.cpp" />
+ <ClCompile Include="core\sourceinterface.cpp" />
+ <ClCompile Include="core\tier0.cpp" />
+ <ClCompile Include="dedicated\dedicated.cpp" />
+ <ClCompile Include="dedicated\dedicatedmaterialsystem.cpp" />
+ <ClCompile Include="dllmain.cpp">
+ <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>
+ </ClCompile>
+ <ClCompile Include="engine\host.cpp" />
+ <ClCompile Include="engine\hoststate.cpp" />
+ <ClCompile Include="engine\r2engine.cpp" />
+ <ClCompile Include="engine\runframe.cpp" />
+ <ClCompile Include="logging\crashhandler.cpp" />
+ <ClCompile Include="logging\logging.cpp" />
+ <ClCompile Include="logging\loghooks.cpp" />
+ <ClCompile Include="logging\sourceconsole.cpp" />
+ <ClCompile Include="masterserver\masterserver.cpp" />
+ <ClCompile Include="mods\compiled\kb_act.cpp" />
+ <ClCompile Include="mods\compiled\modkeyvalues.cpp" />
+ <ClCompile Include="mods\compiled\modpdef.cpp" />
+ <ClCompile Include="mods\compiled\modscriptsrson.cpp" />
+ <ClCompile Include="mods\modmanager.cpp" />
<ClCompile Include="pch.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
</ClCompile>
- <ClCompile Include="modpdef.cpp" />
- <ClCompile Include="playlist.cpp" />
- <ClCompile Include="plugins.cpp" />
- <ClCompile Include="printcommands.cpp" />
- <ClCompile Include="r2client.cpp" />
- <ClCompile Include="r2engine.cpp" />
- <ClCompile Include="r2server.cpp" />
- <ClCompile Include="rejectconnectionfixes.cpp" />
- <ClCompile Include="rpakfilesystem.cpp" />
- <ClCompile Include="runframe.cpp" />
- <ClCompile Include="scriptbrowserhooks.cpp" />
- <ClCompile Include="scriptjson.cpp" />
- <ClCompile Include="scriptdatatables.cpp" />
- <ClCompile Include="scriptmainmenupromos.cpp" />
- <ClCompile Include="scriptmodmenu.cpp" />
- <ClCompile Include="scriptserverbrowser.cpp" />
- <ClCompile Include="modscriptsrson.cpp" />
- <ClCompile Include="scriptuserinfo.cpp" />
- <ClCompile Include="scriptutility.cpp" />
- <ClCompile Include="serverauthentication.cpp" />
- <ClCompile Include="miscserverscript.cpp" />
- <ClCompile Include="serverchathooks.cpp" />
- <ClCompile Include="scriptservertoclientstringcommand.cpp" />
- <ClCompile Include="serverpresence.cpp" />
- <ClCompile Include="sourceconsole.cpp" />
- <ClCompile Include="sourceinterface.cpp" />
- <ClCompile Include="squirrel.cpp" />
- <ClCompile Include="exploitfixes.cpp" />
- <ClCompile Include="squirrelautobind.cpp" />
- <ClCompile Include="tier0.cpp" />
- <ClCompile Include="version.cpp" />
- </ItemGroup>
- <ItemGroup>
- <None Include="include\crypto\bn_conf.h.in" />
- <None Include="include\crypto\dso_conf.h.in" />
- <None Include="include\openssl\asn1.h.in" />
- <None Include="include\openssl\asn1t.h.in" />
- <None Include="include\openssl\bio.h.in" />
- <None Include="include\openssl\cmp.h.in" />
- <None Include="include\openssl\cms.h.in" />
- <None Include="include\openssl\conf.h.in" />
- <None Include="include\openssl\configuration.h.in" />
- <None Include="include\openssl\crmf.h.in" />
- <None Include="include\openssl\crypto.h.in" />
- <None Include="include\openssl\ct.h.in" />
- <None Include="include\openssl\err.h.in" />
- <None Include="include\openssl\ess.h.in" />
- <None Include="include\openssl\fipskey.h.in" />
- <None Include="include\openssl\lhash.h.in" />
- <None Include="include\openssl\ocsp.h.in" />
- <None Include="include\openssl\opensslv.h.in" />
- <None Include="include\openssl\pkcs12.h.in" />
- <None Include="include\openssl\pkcs7.h.in" />
- <None Include="include\openssl\safestack.h.in" />
- <None Include="include\openssl\srp.h.in" />
- <None Include="include\openssl\ssl.h.in" />
- <None Include="include\openssl\ui.h.in" />
- <None Include="include\openssl\x509.h.in" />
- <None Include="include\openssl\x509v3.h.in" />
- <None Include="include\openssl\x509_vfy.h.in" />
- <None Include="include\spdlog\fmt\bundled\LICENSE.rst" />
+ <ClCompile Include="plugins\plugins.cpp" />
+ <ClCompile Include="scripts\client\clientchathooks.cpp" />
+ <ClCompile Include="scripts\client\scriptbrowserhooks.cpp" />
+ <ClCompile Include="scripts\client\scriptmainmenupromos.cpp" />
+ <ClCompile Include="scripts\client\scriptmodmenu.cpp" />
+ <ClCompile Include="scripts\client\scriptserverbrowser.cpp" />
+ <ClCompile Include="scripts\client\scriptservertoclientstringcommand.cpp" />
+ <ClCompile Include="scripts\scriptdatatables.cpp" />
+ <ClCompile Include="scripts\scripthttprequesthandler.cpp" />
+ <ClCompile Include="scripts\scriptjson.cpp" />
+ <ClCompile Include="scripts\scriptutility.cpp" />
+ <ClCompile Include="scripts\server\miscserverfixes.cpp" />
+ <ClCompile Include="scripts\server\miscserverscript.cpp" />
+ <ClCompile Include="scripts\server\scriptuserinfo.cpp" />
+ <ClCompile Include="server\auth\bansystem.cpp" />
+ <ClCompile Include="server\auth\serverauthentication.cpp" />
+ <ClCompile Include="server\bots.cpp" />
+ <ClCompile Include="server\buildainfile.cpp" />
+ <ClCompile Include="server\r2server.cpp" />
+ <ClCompile Include="server\serverchathooks.cpp" />
+ <ClCompile Include="server\serverpresence.cpp" />
+ <ClCompile Include="shared\exploit_fixes\exploitfixes.cpp" />
+ <ClCompile Include="shared\exploit_fixes\exploitfixes_lzss.cpp" />
+ <ClCompile Include="shared\exploit_fixes\exploitfixes_utf8parser.cpp" />
+ <ClCompile Include="shared\exploit_fixes\ns_limits.cpp" />
+ <ClCompile Include="shared\keyvalues.cpp" />
+ <ClCompile Include="shared\maxplayers.cpp" />
+ <ClCompile Include="shared\misccommands.cpp" />
+ <ClCompile Include="shared\playlist.cpp" />
+ <ClCompile Include="squirrel\squirrel.cpp" />
+ <ClCompile Include="squirrel\squirrelautobind.cpp" />
+ <ClCompile Include="util\printcommands.cpp" />
+ <ClCompile Include="util\printmaps.cpp" />
+ <ClCompile Include="util\version.cpp" />
</ItemGroup>
<ItemGroup>
<MASM Include="audio_asm.asm" />
diff --git a/NorthstarDLL/NorthstarDLL.vcxproj.filters b/NorthstarDLL/NorthstarDLL.vcxproj.filters index 4f5ccbc5..5d964951 100644 --- a/NorthstarDLL/NorthstarDLL.vcxproj.filters +++ b/NorthstarDLL/NorthstarDLL.vcxproj.filters @@ -16,12 +16,6 @@ <Filter Include="Header Files\include">
<UniqueIdentifier>{d4199e4b-10d2-43ce-af9c-e1fa79e1e64e}</UniqueIdentifier>
</Filter>
- <Filter Include="Source Files\Client">
- <UniqueIdentifier>{b6f79919-9735-476d-8798-067a75cbeca0}</UniqueIdentifier>
- </Filter>
- <Filter Include="Header Files\Client">
- <UniqueIdentifier>{ca657be5-c2d8-4322-a689-1154aaafe57b}</UniqueIdentifier>
- </Filter>
<Filter Include="Header Files\include\spdlog">
<UniqueIdentifier>{8596cc1c-0492-4467-91e3-1f03b7e19f77}</UniqueIdentifier>
</Filter>
@@ -52,1783 +46,1384 @@ <Filter Include="Header Files\include\rapidjson\msinttypes">
<UniqueIdentifier>{85aacdee-0f92-4ec4-b20c-0739c1175055}</UniqueIdentifier>
</Filter>
- <Filter Include="Source Files\Server">
- <UniqueIdentifier>{3d41d3fc-8a3b-4358-b3e8-4f06dc96abfe}</UniqueIdentifier>
+ <Filter Include="Header Files\include\openssl">
+ <UniqueIdentifier>{4cb0dd89-5f16-4549-a864-34ca3075352a}</UniqueIdentifier>
</Filter>
- <Filter Include="Source Files\Server\Authentication">
- <UniqueIdentifier>{d69760a9-d5ec-4f3e-8f43-f74041654d44}</UniqueIdentifier>
+ <Filter Include="Header Files\include\libcurl">
+ <UniqueIdentifier>{ea1e17a6-40b7-4e1b-8edb-e9ae704ce604}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\Server">
- <UniqueIdentifier>{365e5c1f-4b2f-4d8b-a1d8-cdef401ca689}</UniqueIdentifier>
+ <Filter Include="Source Files\client">
+ <UniqueIdentifier>{757f33f0-f17b-4ecd-8b95-2157b2d2f03c}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\Server\Authentication">
- <UniqueIdentifier>{24fd0855-9288-4129-93ba-c6cafdc98d1b}</UniqueIdentifier>
+ <Filter Include="Source Files\config">
+ <UniqueIdentifier>{7f9657c5-d4c7-464f-b2f6-d9afbbe0bb42}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\include\openssl">
- <UniqueIdentifier>{4cb0dd89-5f16-4549-a864-34ca3075352a}</UniqueIdentifier>
+ <Filter Include="Source Files\dedicated">
+ <UniqueIdentifier>{e45d18f7-8992-47ac-837c-4cb99f5a0487}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\include\openssl\openssl">
- <UniqueIdentifier>{914d8b8f-6b19-4f23-b746-f40062d72906}</UniqueIdentifier>
+ <Filter Include="Source Files\masterserver">
+ <UniqueIdentifier>{62167757-13c1-4f57-a8f5-15a3c800997b}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\include\openssl\internal">
- <UniqueIdentifier>{09516029-fac7-4235-ad61-402977534a0b}</UniqueIdentifier>
+ <Filter Include="Source Files\mods">
+ <UniqueIdentifier>{25e33568-4125-406d-8661-01ae2abf61a5}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\include\openssl\crypto">
- <UniqueIdentifier>{8cc1ae44-9dbf-4719-91a2-82e00b8d78e2}</UniqueIdentifier>
+ <Filter Include="Source Files\mods\compiled">
+ <UniqueIdentifier>{008e67ce-bf6a-4792-9ded-69a434edea00}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\include\libcurl">
- <UniqueIdentifier>{ea1e17a6-40b7-4e1b-8edb-e9ae704ce604}</UniqueIdentifier>
+ <Filter Include="Source Files\plugins">
+ <UniqueIdentifier>{dbf03bda-dd0a-44ce-a6b1-361f7f21a10e}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Source Files\server">
+ <UniqueIdentifier>{d83e1c5c-c9c7-47a2-b406-9b5a93e3cc29}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Source Files\scripts">
+ <UniqueIdentifier>{57fb0fa6-7665-4d37-bb2b-6f5570023d83}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Source Files\server\auth">
+ <UniqueIdentifier>{08436037-e86f-4410-8db6-37c8b10ca5a1}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Source Files\squirrel">
+ <UniqueIdentifier>{e8fb33f4-47b5-4fd9-b6c0-2ca1bd8cac81}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Source Files\util">
+ <UniqueIdentifier>{d60e54d0-b4e4-4210-af6b-59bdd84bed0f}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Header Files\client">
+ <UniqueIdentifier>{06c7928e-bf66-446e-9cde-c8135c79d14b}</UniqueIdentifier>
</Filter>
- <Filter Include="Source Files\Client\Scripted">
- <UniqueIdentifier>{51910ba0-2ff8-461d-9f67-8d7907b57d22}</UniqueIdentifier>
+ <Filter Include="Header Files\config">
+ <UniqueIdentifier>{0b8b4a41-6131-4388-85d2-f5754a304610}</UniqueIdentifier>
</Filter>
- <Filter Include="Source Files\Server\Scripted">
- <UniqueIdentifier>{325e0d7d-6832-496d-8d8e-968fdfa5dd40}</UniqueIdentifier>
+ <Filter Include="Header Files\dedicated">
+ <UniqueIdentifier>{9ccd8616-d961-4c37-96e0-3219bd293afb}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\Server\Scripted">
- <UniqueIdentifier>{802d0771-62f1-4733-89f9-57a4d8864b8d}</UniqueIdentifier>
+ <Filter Include="Header Files\exploit_fixes">
+ <UniqueIdentifier>{a9390f6a-5031-4c65-a636-82cf90899435}</UniqueIdentifier>
</Filter>
- <Filter Include="Source Files\Console">
- <UniqueIdentifier>{04fd662a-6e70-494c-b720-c694a5cc2fb1}</UniqueIdentifier>
+ <Filter Include="Header Files\hooks">
+ <UniqueIdentifier>{acf049ba-358a-4520-8813-2f802ce7167e}</UniqueIdentifier>
</Filter>
- <Filter Include="Source Files\Convar">
- <UniqueIdentifier>{a18afb37-5fdd-4340-a6b4-a6541593e398}</UniqueIdentifier>
+ <Filter Include="Header Files\masterserver">
+ <UniqueIdentifier>{0075910c-80c9-490f-a0d4-f9e410e4a918}</UniqueIdentifier>
</Filter>
- <Filter Include="Source Files\Exploit Fixes">
- <UniqueIdentifier>{4a8a695a-a103-4b1f-b314-0ec19a253119}</UniqueIdentifier>
+ <Filter Include="Header Files\mods">
+ <UniqueIdentifier>{31143dec-abe6-477a-9cae-045c5b57380b}</UniqueIdentifier>
</Filter>
- <Filter Include="Source Files\Filesystem">
- <UniqueIdentifier>{d8a83b5e-9a23-4124-824f-eab37880cb08}</UniqueIdentifier>
+ <Filter Include="Header Files\plugins">
+ <UniqueIdentifier>{c6c4746d-d6e1-4dba-a3fc-e645b28ac83f}</UniqueIdentifier>
</Filter>
- <Filter Include="Source Files\Game Functions">
- <UniqueIdentifier>{2cbddb28-0b17-4881-847d-8773da52b268}</UniqueIdentifier>
+ <Filter Include="Header Files\scripts">
+ <UniqueIdentifier>{3fba68ef-d715-4e18-b4a2-05d3fee00e2d}</UniqueIdentifier>
</Filter>
- <Filter Include="Source Files\Hooks">
- <UniqueIdentifier>{4db0d1e9-9035-457f-87f1-5dc3f13b6b9e}</UniqueIdentifier>
+ <Filter Include="Header Files\server">
+ <UniqueIdentifier>{ae9c5353-a3ab-44a9-a328-91df6aa8c80e}</UniqueIdentifier>
</Filter>
- <Filter Include="Source Files\Math">
- <UniqueIdentifier>{59b0f68f-daa7-4641-b6fa-8464b56da2bb}</UniqueIdentifier>
+ <Filter Include="Header Files\server\auth">
+ <UniqueIdentifier>{87869634-fa0f-48f8-a306-94d5a8157e1e}</UniqueIdentifier>
</Filter>
- <Filter Include="Source Files\Mods">
- <UniqueIdentifier>{3e892d07-2239-44da-9cf3-c288a34cf9a2}</UniqueIdentifier>
+ <Filter Include="Header Files\squirrel">
+ <UniqueIdentifier>{0ad64562-eb98-4015-a4fc-6fdc63ac9322}</UniqueIdentifier>
</Filter>
- <Filter Include="Source Files\Mods\Compiled Assets">
- <UniqueIdentifier>{14fc0931-acad-46ec-a55e-94f4469d4235}</UniqueIdentifier>
+ <Filter Include="Header Files\util">
+ <UniqueIdentifier>{13d0affc-1b4d-4090-8ad6-e9ae8fc56599}</UniqueIdentifier>
</Filter>
- <Filter Include="Source Files\Dedicated Server">
- <UniqueIdentifier>{947835db-67d6-42c0-870d-62743f85231f}</UniqueIdentifier>
+ <Filter Include="Source Files\engine">
+ <UniqueIdentifier>{b264a27d-619b-49b3-acbb-4e138ba29daf}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\Console">
- <UniqueIdentifier>{bf0769d8-40fd-4701-85e9-7ed94aab2283}</UniqueIdentifier>
+ <Filter Include="Header Files\engine">
+ <UniqueIdentifier>{35658430-465d-433c-aa2d-b8266edb205a}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\Convar">
- <UniqueIdentifier>{9751b551-5886-45d4-a039-cbd10445263d}</UniqueIdentifier>
+ <Filter Include="Source Files\shared">
+ <UniqueIdentifier>{0517ea0b-2eca-4b1c-a0d1-766d4d1d19d2}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\Exploit Fixes">
- <UniqueIdentifier>{96101d42-72af-4fd1-8559-8d1d1ff66240}</UniqueIdentifier>
+ <Filter Include="Header Files\shared">
+ <UniqueIdentifier>{6d3f7657-6e58-4007-acd3-0b787f35406a}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\Filesystem">
- <UniqueIdentifier>{ee3ba13a-3061-41d7-981d-328ac2596fd2}</UniqueIdentifier>
+ <Filter Include="Source Files\logging">
+ <UniqueIdentifier>{b9c0cfad-46d4-41ea-806e-daef3d66c381}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\Game Functions">
- <UniqueIdentifier>{0c93d909-e0d6-4c35-a8a4-a13f681a1012}</UniqueIdentifier>
+ <Filter Include="Header Files\logging">
+ <UniqueIdentifier>{a4f7d529-0b21-48af-82ef-9fb971b802f7}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\Hooks">
- <UniqueIdentifier>{94259c8c-5411-48bf-af4f-46ca32b7d0bb}</UniqueIdentifier>
+ <Filter Include="Header Files\core">
+ <UniqueIdentifier>{7ee4b436-a5d3-4680-bf99-bc6d7640ded3}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\Math">
- <UniqueIdentifier>{44a83740-9d70-480d-9a7a-43b81f8eab9e}</UniqueIdentifier>
+ <Filter Include="Header Files\core\convar">
+ <UniqueIdentifier>{53a84980-9a1c-46b0-9b6d-06ec35781297}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\Mods">
- <UniqueIdentifier>{6bbce8a5-38b4-4763-a7cb-4e98012ec245}</UniqueIdentifier>
+ <Filter Include="Header Files\core\filesystem">
+ <UniqueIdentifier>{01e215c3-9fa2-4de1-a3e0-b6a27396c68c}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\Mods\Compiled Assets">
- <UniqueIdentifier>{826d5193-3ad0-434b-ba7c-dd24ed4bbd0c}</UniqueIdentifier>
+ <Filter Include="Header Files\core\math">
+ <UniqueIdentifier>{0fa069c9-302b-4be5-ba47-37e13e181d78}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\Dedicated Server">
- <UniqueIdentifier>{0f1ba4c4-78ee-4b05-afa5-6f598063f5c1}</UniqueIdentifier>
+ <Filter Include="Source Files\scripts\client">
+ <UniqueIdentifier>{08a9ca37-8a6e-458c-9da8-6f3dc917ddf7}</UniqueIdentifier>
</Filter>
- <Filter Include="Header Files\Squirrel">
- <UniqueIdentifier>{ca669b16-b8bb-4654-993f-fffa44c914f1}</UniqueIdentifier>
+ <Filter Include="Source Files\scripts\server">
+ <UniqueIdentifier>{2c0b196e-3a11-4655-a158-8a1c84be4471}</UniqueIdentifier>
</Filter>
- <Filter Include="Source Files\Squirrel">
- <UniqueIdentifier>{26365f16-ff52-4e80-a01b-2ca020376c93}</UniqueIdentifier>
+ <Filter Include="Source Files\core">
+ <UniqueIdentifier>{122e2230-0605-40ef-8963-6e339d2c725e}</UniqueIdentifier>
</Filter>
- <Filter Include="Source Files\Scripted">
- <UniqueIdentifier>{7263403a-7550-4aa2-a724-f622ab200eed}</UniqueIdentifier>
+ <Filter Include="Source Files\core\convar">
+ <UniqueIdentifier>{4e0d0f0e-c8f2-4fe1-a787-57060c610553}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Source Files\core\math">
+ <UniqueIdentifier>{9e67fc99-0e20-4155-a167-5d251ea36581}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Source Files\core\filesystem">
+ <UniqueIdentifier>{62b3cff9-b2d8-4c1c-a2a6-1e2138c0ff88}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Source Files\shared\exploit_fixes">
+ <UniqueIdentifier>{9a819cdd-ebca-4cba-b231-76b6f98ed6ac}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Header Files\shared\exploit_fixes">
+ <UniqueIdentifier>{1a377c09-bd3d-4757-b3bc-9cd0a1e6ac0d}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
- <ClInclude Include="pch.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="include\MinHook.h">
+ <ClInclude Include="..\include\httplib.h">
<Filter>Header Files\include</Filter>
</ClInclude>
- <ClInclude Include="main.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="sourceconsole.h">
- <Filter>Header Files\Client</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\async.h">
- <Filter>Header Files\include\spdlog</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\async_logger.h">
- <Filter>Header Files\include\spdlog</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\async_logger-inl.h">
- <Filter>Header Files\include\spdlog</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\common.h">
- <Filter>Header Files\include\spdlog</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\common-inl.h">
- <Filter>Header Files\include\spdlog</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\formatter.h">
- <Filter>Header Files\include\spdlog</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\fwd.h">
- <Filter>Header Files\include\spdlog</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\logger.h">
- <Filter>Header Files\include\spdlog</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\logger-inl.h">
- <Filter>Header Files\include\spdlog</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\pattern_formatter.h">
- <Filter>Header Files\include\spdlog</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\pattern_formatter-inl.h">
- <Filter>Header Files\include\spdlog</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\spdlog.h">
- <Filter>Header Files\include\spdlog</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\spdlog-inl.h">
- <Filter>Header Files\include\spdlog</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\stopwatch.h">
- <Filter>Header Files\include\spdlog</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\tweakme.h">
- <Filter>Header Files\include\spdlog</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\version.h">
- <Filter>Header Files\include\spdlog</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\cfg\argv.h">
- <Filter>Header Files\include\spdlog\cfg</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\cfg\env.h">
- <Filter>Header Files\include\spdlog\cfg</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\cfg\helpers.h">
- <Filter>Header Files\include\spdlog\cfg</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\cfg\helpers-inl.h">
- <Filter>Header Files\include\spdlog\cfg</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\fmt\bin_to_hex.h">
- <Filter>Header Files\include\spdlog\fmt</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\fmt\chrono.h">
- <Filter>Header Files\include\spdlog\fmt</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\fmt\fmt.h">
- <Filter>Header Files\include\spdlog\fmt</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\fmt\ostr.h">
- <Filter>Header Files\include\spdlog\fmt</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\fmt\bundled\chrono.h">
- <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\fmt\bundled\color.h">
- <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\fmt\bundled\compile.h">
- <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\fmt\bundled\core.h">
- <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\fmt\bundled\format.h">
- <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\fmt\bundled\format-inl.h">
- <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\fmt\bundled\locale.h">
- <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\fmt\bundled\os.h">
- <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\fmt\bundled\ostream.h">
- <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\fmt\bundled\posix.h">
- <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\fmt\bundled\printf.h">
- <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\fmt\bundled\ranges.h">
- <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\android_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\ansicolor_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\ansicolor_sink-inl.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\base_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\base_sink-inl.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\basic_file_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\basic_file_sink-inl.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\daily_file_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\dist_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\dup_filter_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\hourly_file_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\msvc_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\null_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\ostream_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\ringbuffer_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\rotating_file_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\rotating_file_sink-inl.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\sink-inl.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\stdout_color_sinks.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\stdout_color_sinks-inl.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\stdout_sinks.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\stdout_sinks-inl.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\syslog_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\systemd_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\tcp_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\win_eventlog_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\wincolor_sink.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\sinks\wincolor_sink-inl.h">
- <Filter>Header Files\include\spdlog\sinks</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\backtracer.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\backtracer-inl.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\circular_q.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\console_globals.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\file_helper.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\file_helper-inl.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\fmt_helper.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\log_msg.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\log_msg_buffer.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\log_msg_buffer-inl.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\log_msg-inl.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\mpmc_blocking_q.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\null_mutex.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\os.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\os-inl.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\periodic_worker.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\periodic_worker-inl.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\registry.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\registry-inl.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\synchronous_factory.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\tcp_client.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\tcp_client-windows.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\thread_pool.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\thread_pool-inl.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\spdlog\details\windows_include.h">
- <Filter>Header Files\include\spdlog\details</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\allocators.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\document.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\encodedstream.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\encodings.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\filereadstream.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\filewritestream.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\fwd.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\istreamwrapper.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\memorybuffer.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\memorystream.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\ostreamwrapper.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\pointer.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\prettywriter.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\rapidjson.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\reader.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\schema.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\stream.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\stringbuffer.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\writer.h">
- <Filter>Header Files\include\rapidjson</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\error\en.h">
- <Filter>Header Files\include\rapidjson\error</Filter>
- </ClInclude>
- <ClInclude Include="include\rapidjson\error\error.h">
- <Filter>Header Files\include\rapidjson\error</Filter>
+ <ClInclude Include="..\include\MinHook.h">
+ <Filter>Header Files\include</Filter>
</ClInclude>
- <ClInclude Include="include\rapidjson\internal\biginteger.h">
- <Filter>Header Files\include\rapidjson\internal</Filter>
+ <ClInclude Include="..\include\libcurl\include\curl\curl.h">
+ <Filter>Header Files\include\libcurl</Filter>
</ClInclude>
- <ClInclude Include="include\rapidjson\internal\diyfp.h">
- <Filter>Header Files\include\rapidjson\internal</Filter>
+ <ClInclude Include="..\include\libcurl\include\curl\curlver.h">
+ <Filter>Header Files\include\libcurl</Filter>
</ClInclude>
- <ClInclude Include="include\rapidjson\internal\dtoa.h">
- <Filter>Header Files\include\rapidjson\internal</Filter>
+ <ClInclude Include="..\include\libcurl\include\curl\easy.h">
+ <Filter>Header Files\include\libcurl</Filter>
</ClInclude>
- <ClInclude Include="include\rapidjson\internal\ieee754.h">
- <Filter>Header Files\include\rapidjson\internal</Filter>
+ <ClInclude Include="..\include\libcurl\include\curl\mprintf.h">
+ <Filter>Header Files\include\libcurl</Filter>
</ClInclude>
- <ClInclude Include="include\rapidjson\internal\itoa.h">
- <Filter>Header Files\include\rapidjson\internal</Filter>
+ <ClInclude Include="..\include\libcurl\include\curl\multi.h">
+ <Filter>Header Files\include\libcurl</Filter>
</ClInclude>
- <ClInclude Include="include\rapidjson\internal\meta.h">
- <Filter>Header Files\include\rapidjson\internal</Filter>
+ <ClInclude Include="..\include\libcurl\include\curl\options.h">
+ <Filter>Header Files\include\libcurl</Filter>
</ClInclude>
- <ClInclude Include="include\rapidjson\internal\pow10.h">
- <Filter>Header Files\include\rapidjson\internal</Filter>
+ <ClInclude Include="..\include\libcurl\include\curl\stdcheaders.h">
+ <Filter>Header Files\include\libcurl</Filter>
</ClInclude>
- <ClInclude Include="include\rapidjson\internal\regex.h">
- <Filter>Header Files\include\rapidjson\internal</Filter>
+ <ClInclude Include="..\include\libcurl\include\curl\system.h">
+ <Filter>Header Files\include\libcurl</Filter>
</ClInclude>
- <ClInclude Include="include\rapidjson\internal\stack.h">
- <Filter>Header Files\include\rapidjson\internal</Filter>
+ <ClInclude Include="..\include\libcurl\include\curl\typecheck-gcc.h">
+ <Filter>Header Files\include\libcurl</Filter>
</ClInclude>
- <ClInclude Include="include\rapidjson\internal\strfunc.h">
- <Filter>Header Files\include\rapidjson\internal</Filter>
+ <ClInclude Include="..\include\libcurl\include\curl\urlapi.h">
+ <Filter>Header Files\include\libcurl</Filter>
</ClInclude>
- <ClInclude Include="include\rapidjson\internal\strtod.h">
- <Filter>Header Files\include\rapidjson\internal</Filter>
+ <ClInclude Include="..\include\openssl\__DECC_INCLUDE_EPILOGUE.H">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\rapidjson\internal\swap.h">
- <Filter>Header Files\include\rapidjson\internal</Filter>
+ <ClInclude Include="..\include\openssl\__DECC_INCLUDE_PROLOGUE.H">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\rapidjson\msinttypes\inttypes.h">
- <Filter>Header Files\include\rapidjson\msinttypes</Filter>
+ <ClInclude Include="..\include\openssl\aes.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\rapidjson\msinttypes\stdint.h">
- <Filter>Header Files\include\rapidjson\msinttypes</Filter>
+ <ClInclude Include="..\include\openssl\asn1.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="serverauthentication.h">
- <Filter>Header Files\Server\Authentication</Filter>
+ <ClInclude Include="..\include\openssl\asn1_mac.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\httplib.h">
- <Filter>Header Files\include</Filter>
+ <ClInclude Include="..\include\openssl\asn1err.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\__DECC_INCLUDE_EPILOGUE.H">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\asn1t.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\__DECC_INCLUDE_PROLOGUE.H">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\async.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\aes.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\asyncerr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\asn1.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\bio.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\asn1_mac.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\bioerr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\asn1err.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\blowfish.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\asn1t.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\bn.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\async.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\bnerr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\asyncerr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\buffer.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\bio.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\buffererr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\bioerr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\camellia.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\blowfish.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\cast.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\bn.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\cmac.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\bnerr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\cmp.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\buffer.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\cmp_util.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\buffererr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\cmperr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\camellia.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\cms.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\cast.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\cmserr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\cmac.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\comp.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\cmp.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\comperr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\cmp_util.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\conf.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\cmperr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\conf_api.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\cms.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\conferr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\cmserr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\configuration.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\comp.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\conftypes.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\comperr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\core.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\conf.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\core_dispatch.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\conf_api.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\core_names.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\conferr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\core_object.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\configuration.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\crmf.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\conftypes.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\crmferr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\core.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\crypto.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\core_dispatch.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\cryptoerr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\core_names.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\cryptoerr_legacy.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\core_object.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\ct.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\crmf.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\cterr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\crmferr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\decoder.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\crypto.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\decodererr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\cryptoerr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\des.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\cryptoerr_legacy.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\dh.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\ct.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\dherr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\cterr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\dsa.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\decoder.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\dsaerr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\decodererr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\dtls1.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\des.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\e_os2.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\dh.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\ebcdic.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\dherr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\ec.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\dsa.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\ecdh.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\dsaerr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\ecdsa.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\dtls1.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\ecerr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\e_os2.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\encoder.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\ebcdic.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\encodererr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\ec.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\engine.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\ecdh.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\engineerr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\ecdsa.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\err.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\ecerr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\ess.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\encoder.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\esserr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\encodererr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\evp.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\engine.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\evperr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\engineerr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\fips_names.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\err.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\fipskey.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\ess.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\hmac.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\esserr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\http.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\evp.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\httperr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\evperr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\idea.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\fips_names.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\kdf.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\fipskey.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\kdferr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\hmac.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\lhash.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\http.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\macros.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\httperr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\md2.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\idea.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\md4.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\kdf.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\md5.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\kdferr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\mdc2.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\lhash.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\modes.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\macros.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\obj_mac.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\md2.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\objects.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\md4.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\objectserr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\md5.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\ocsp.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\mdc2.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\ocsperr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\modes.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\opensslconf.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\obj_mac.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\opensslv.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\objects.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\ossl_typ.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\objectserr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\param_build.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\ocsp.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\params.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\ocsperr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\pem.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\opensslconf.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\pem2.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\opensslv.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\pemerr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\ossl_typ.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\pkcs7.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\param_build.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\pkcs7err.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\params.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\pkcs12.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\pem.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\pkcs12err.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\pem2.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\prov_ssl.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\pemerr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\proverr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\pkcs7.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\provider.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\pkcs7err.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\rand.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\pkcs12.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\randerr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\pkcs12err.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\rc2.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\prov_ssl.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\rc4.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\proverr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\rc5.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\provider.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\ripemd.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\rand.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\rsa.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\randerr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\rsaerr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\rc2.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\safestack.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\rc4.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\seed.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\rc5.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\self_test.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\ripemd.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\sha.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\rsa.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\srp.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\rsaerr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\srtp.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\safestack.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\ssl.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\seed.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\ssl2.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\self_test.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\ssl3.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\sha.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\sslerr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\srp.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\sslerr_legacy.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\srtp.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\stack.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\ssl.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\store.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\ssl2.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\storeerr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\ssl3.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\symhacks.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\sslerr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\tls1.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\sslerr_legacy.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\trace.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\stack.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\ts.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\store.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\tserr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\storeerr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\txt_db.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\symhacks.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\types.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\tls1.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\ui.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\trace.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\uierr.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\ts.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\whrlpool.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\tserr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\x509.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\txt_db.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\x509_vfy.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\types.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\x509err.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\ui.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\x509v3.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\uierr.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\openssl\x509v3err.h">
+ <Filter>Header Files\include\openssl</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\whrlpool.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\rapidjson\allocators.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\x509.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\rapidjson\document.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\x509_vfy.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\rapidjson\encodedstream.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\x509err.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\rapidjson\encodings.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\x509v3.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\rapidjson\filereadstream.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\openssl\x509v3err.h">
- <Filter>Header Files\include\openssl\openssl</Filter>
+ <ClInclude Include="..\include\rapidjson\filewritestream.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\__DECC_INCLUDE_EPILOGUE.H">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\fwd.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\__DECC_INCLUDE_PROLOGUE.H">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\istreamwrapper.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\aes_platform.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\memorybuffer.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\aria.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\memorystream.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\asn1.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\ostreamwrapper.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\asn1_dsa.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\pointer.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\asn1err.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\prettywriter.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\async.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\rapidjson.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\asyncerr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\reader.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\bioerr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\schema.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\bn.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\stream.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\bn_conf.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\stringbuffer.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\bn_dh.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\writer.h">
+ <Filter>Header Files\include\rapidjson</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\bn_srp.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\error\en.h">
+ <Filter>Header Files\include\rapidjson\error</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\bnerr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\error\error.h">
+ <Filter>Header Files\include\rapidjson\error</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\buffererr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\internal\biginteger.h">
+ <Filter>Header Files\include\rapidjson\internal</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\chacha.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\internal\diyfp.h">
+ <Filter>Header Files\include\rapidjson\internal</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\cmll_platform.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\internal\dtoa.h">
+ <Filter>Header Files\include\rapidjson\internal</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\cmperr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\internal\ieee754.h">
+ <Filter>Header Files\include\rapidjson\internal</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\cmserr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\internal\itoa.h">
+ <Filter>Header Files\include\rapidjson\internal</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\comperr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\internal\meta.h">
+ <Filter>Header Files\include\rapidjson\internal</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\conferr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\internal\pow10.h">
+ <Filter>Header Files\include\rapidjson\internal</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\crmferr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\internal\regex.h">
+ <Filter>Header Files\include\rapidjson\internal</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\cryptlib.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\internal\stack.h">
+ <Filter>Header Files\include\rapidjson\internal</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\cryptoerr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\internal\strfunc.h">
+ <Filter>Header Files\include\rapidjson\internal</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\cterr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\internal\strtod.h">
+ <Filter>Header Files\include\rapidjson\internal</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\ctype.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\internal\swap.h">
+ <Filter>Header Files\include\rapidjson\internal</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\decoder.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\msinttypes\inttypes.h">
+ <Filter>Header Files\include\rapidjson\msinttypes</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\decodererr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\rapidjson\msinttypes\stdint.h">
+ <Filter>Header Files\include\rapidjson\msinttypes</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\des_platform.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\async.h">
+ <Filter>Header Files\include\spdlog</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\dh.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\async_logger.h">
+ <Filter>Header Files\include\spdlog</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\dherr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\async_logger-inl.h">
+ <Filter>Header Files\include\spdlog</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\dsa.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\common.h">
+ <Filter>Header Files\include\spdlog</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\dsaerr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\common-inl.h">
+ <Filter>Header Files\include\spdlog</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\dso_conf.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\formatter.h">
+ <Filter>Header Files\include\spdlog</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\ec.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\fwd.h">
+ <Filter>Header Files\include\spdlog</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\ecerr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\logger.h">
+ <Filter>Header Files\include\spdlog</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\ecx.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\logger-inl.h">
+ <Filter>Header Files\include\spdlog</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\encoder.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\pattern_formatter.h">
+ <Filter>Header Files\include\spdlog</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\encodererr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\pattern_formatter-inl.h">
+ <Filter>Header Files\include\spdlog</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\engine.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\spdlog.h">
+ <Filter>Header Files\include\spdlog</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\engineerr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\spdlog-inl.h">
+ <Filter>Header Files\include\spdlog</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\err.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\stopwatch.h">
+ <Filter>Header Files\include\spdlog</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\ess.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\tweakme.h">
+ <Filter>Header Files\include\spdlog</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\esserr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\version.h">
+ <Filter>Header Files\include\spdlog</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\evp.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\cfg\argv.h">
+ <Filter>Header Files\include\spdlog\cfg</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\evperr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\cfg\env.h">
+ <Filter>Header Files\include\spdlog\cfg</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\httperr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\cfg\helpers.h">
+ <Filter>Header Files\include\spdlog\cfg</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\lhash.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\cfg\helpers-inl.h">
+ <Filter>Header Files\include\spdlog\cfg</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\md32_common.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\backtracer.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\modes.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\backtracer-inl.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\objects.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\circular_q.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\objectserr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\console_globals.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\ocsperr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\file_helper.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\pem.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\file_helper-inl.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\pemerr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\fmt_helper.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\pkcs7.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\log_msg.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\pkcs7err.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\log_msg_buffer.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\pkcs12err.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\log_msg_buffer-inl.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\poly1305.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\log_msg-inl.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\ppc_arch.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\mpmc_blocking_q.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\punycode.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\null_mutex.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\rand.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\os.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\rand_pool.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\os-inl.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\randerr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\periodic_worker.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\rsa.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\periodic_worker-inl.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\rsaerr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\registry.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\security_bits.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\registry-inl.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\sha.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\synchronous_factory.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\siphash.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\tcp_client.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\siv.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\tcp_client-windows.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\sm2.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\thread_pool.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\sm2err.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\thread_pool-inl.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\sm4.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\details\windows_include.h">
+ <Filter>Header Files\include\spdlog\details</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\sparc_arch.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\fmt\bin_to_hex.h">
+ <Filter>Header Files\include\spdlog\fmt</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\sparse_array.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\fmt\chrono.h">
+ <Filter>Header Files\include\spdlog\fmt</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\store.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\fmt\fmt.h">
+ <Filter>Header Files\include\spdlog\fmt</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\storeerr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\fmt\ostr.h">
+ <Filter>Header Files\include\spdlog\fmt</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\tserr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\fmt\bundled\chrono.h">
+ <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\types.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\fmt\bundled\color.h">
+ <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\uierr.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\fmt\bundled\compile.h">
+ <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\x509.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\fmt\bundled\core.h">
+ <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\x509err.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\fmt\bundled\format.h">
+ <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
</ClInclude>
- <ClInclude Include="include\crypto\x509v3err.h">
- <Filter>Header Files\include\openssl\crypto</Filter>
+ <ClInclude Include="..\include\spdlog\fmt\bundled\format-inl.h">
+ <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
</ClInclude>
- <ClInclude Include="include\internal\__DECC_INCLUDE_EPILOGUE.H">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\fmt\bundled\locale.h">
+ <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
</ClInclude>
- <ClInclude Include="include\internal\__DECC_INCLUDE_PROLOGUE.H">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\fmt\bundled\os.h">
+ <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
</ClInclude>
- <ClInclude Include="include\internal\asn1.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\fmt\bundled\ostream.h">
+ <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
</ClInclude>
- <ClInclude Include="include\internal\bio.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\fmt\bundled\posix.h">
+ <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
</ClInclude>
- <ClInclude Include="include\internal\comp.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\fmt\bundled\printf.h">
+ <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
</ClInclude>
- <ClInclude Include="include\internal\conf.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\fmt\bundled\ranges.h">
+ <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
</ClInclude>
- <ClInclude Include="include\internal\constant_time.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\android_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\core.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\ansicolor_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\cryptlib.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\ansicolor_sink-inl.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\dane.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\base_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\deprecated.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\base_sink-inl.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\der.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\basic_file_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\dso.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\basic_file_sink-inl.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\dsoerr.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\daily_file_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\endian.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\dist_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\err.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\dup_filter_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\ffc.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\hourly_file_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\ktls.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\msvc_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\namemap.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\null_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\nelem.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\ostream_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\numbers.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\ringbuffer_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\o_dir.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\rotating_file_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\packet.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\rotating_file_sink-inl.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\param_build_set.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\passphrase.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\sink-inl.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\property.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\stdout_color_sinks.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\propertyerr.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\stdout_color_sinks-inl.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\provider.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\stdout_sinks.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\refcount.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\stdout_sinks-inl.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\sha3.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\syslog_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\sizes.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\systemd_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\sm3.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\tcp_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\sockets.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\win_eventlog_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\sslconf.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\wincolor_sink.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\symhacks.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="..\include\spdlog\sinks\wincolor_sink-inl.h">
+ <Filter>Header Files\include\spdlog\sinks</Filter>
</ClInclude>
- <ClInclude Include="include\internal\thread_once.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="client\audio.h">
+ <Filter>Header Files\client</Filter>
</ClInclude>
- <ClInclude Include="include\internal\tlsgroups.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="client\localchatwriter.h">
+ <Filter>Header Files\client</Filter>
</ClInclude>
- <ClInclude Include="include\internal\tsan_assist.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="dedicated\dedicated.h">
+ <Filter>Header Files\dedicated</Filter>
</ClInclude>
- <ClInclude Include="include\internal\unicode.h">
- <Filter>Header Files\include\openssl\internal</Filter>
+ <ClInclude Include="exploit_fixes\ns_limits.h">
+ <Filter>Header Files\exploit_fixes</Filter>
</ClInclude>
- <ClInclude Include="include\libcurl\include\curl\curl.h">
- <Filter>Header Files\include\libcurl</Filter>
+ <ClInclude Include="hooks\hooks.h">
+ <Filter>Header Files\hooks</Filter>
</ClInclude>
- <ClInclude Include="include\libcurl\include\curl\curlver.h">
- <Filter>Header Files\include\libcurl</Filter>
+ <ClInclude Include="hooks\memory.h">
+ <Filter>Header Files\hooks</Filter>
</ClInclude>
- <ClInclude Include="include\libcurl\include\curl\easy.h">
- <Filter>Header Files\include\libcurl</Filter>
+ <ClInclude Include="hooks\sourceinterface.h">
+ <Filter>Header Files\hooks</Filter>
</ClInclude>
- <ClInclude Include="include\libcurl\include\curl\mprintf.h">
- <Filter>Header Files\include\libcurl</Filter>
+ <ClInclude Include="masterserver\masterserver.h">
+ <Filter>Header Files\masterserver</Filter>
</ClInclude>
- <ClInclude Include="include\libcurl\include\curl\multi.h">
- <Filter>Header Files\include\libcurl</Filter>
+ <ClInclude Include="mods\modmanager.h">
+ <Filter>Header Files\mods</Filter>
</ClInclude>
- <ClInclude Include="include\libcurl\include\curl\options.h">
- <Filter>Header Files\include\libcurl</Filter>
+ <ClInclude Include="plugins\plugin_abi.h">
+ <Filter>Header Files\plugins</Filter>
</ClInclude>
- <ClInclude Include="include\libcurl\include\curl\stdcheaders.h">
- <Filter>Header Files\include\libcurl</Filter>
+ <ClInclude Include="plugins\plugins.h">
+ <Filter>Header Files\plugins</Filter>
</ClInclude>
- <ClInclude Include="include\libcurl\include\curl\system.h">
- <Filter>Header Files\include\libcurl</Filter>
+ <ClInclude Include="server\serverpresence.h">
+ <Filter>Header Files\server</Filter>
</ClInclude>
- <ClInclude Include="include\libcurl\include\curl\typecheck-gcc.h">
- <Filter>Header Files\include\libcurl</Filter>
+ <ClInclude Include="server\auth\bansystem.h">
+ <Filter>Header Files\server\auth</Filter>
</ClInclude>
- <ClInclude Include="include\libcurl\include\curl\urlapi.h">
- <Filter>Header Files\include\libcurl</Filter>
+ <ClInclude Include="server\auth\serverauthentication.h">
+ <Filter>Header Files\server\auth</Filter>
</ClInclude>
- <ClInclude Include="bansystem.h">
- <Filter>Header Files\Server\Authentication</Filter>
+ <ClInclude Include="squirrel\squirrel.h">
+ <Filter>Header Files\squirrel</Filter>
</ClInclude>
- <ClInclude Include="audio.h">
- <Filter>Header Files\Client</Filter>
+ <ClInclude Include="squirrel\squirrelautobind.h">
+ <Filter>Header Files\squirrel</Filter>
</ClInclude>
- <ClInclude Include="localchatwriter.h">
- <Filter>Header Files\Client</Filter>
+ <ClInclude Include="squirrel\squirrelclasstypes.h">
+ <Filter>Header Files\squirrel</Filter>
</ClInclude>
- <ClInclude Include="plugins.h">
- <Filter>Header Files</Filter>
+ <ClInclude Include="squirrel\squirreldatatypes.h">
+ <Filter>Header Files\squirrel</Filter>
</ClInclude>
- <ClInclude Include="plugin_abi.h">
- <Filter>Header Files</Filter>
+ <ClInclude Include="util\version.h">
+ <Filter>Header Files\util</Filter>
</ClInclude>
- <ClInclude Include="version.h">
+ <ClInclude Include="dllmain.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ns_version.h">
<Filter>Header Files</Filter>
</ClInclude>
- <ClInclude Include="serverchathooks.h">
- <Filter>Header Files\Server\Scripted</Filter>
- </ClInclude>
- <ClInclude Include="dedicated.h">
- <Filter>Header Files\Dedicated Server</Filter>
- </ClInclude>
- <ClInclude Include="nsprefix.h">
+ <ClInclude Include="pch.h">
<Filter>Header Files</Filter>
</ClInclude>
- <ClInclude Include="exploitfixes_utf8parser.cpp">
- <Filter>Source Files\Exploit Fixes</Filter>
+ <ClInclude Include="config\profile.h">
+ <Filter>Header Files\config</Filter>
</ClInclude>
- <ClInclude Include="crashhandler.h">
- <Filter>Header Files</Filter>
+ <ClInclude Include="engine\hoststate.h">
+ <Filter>Header Files\engine</Filter>
</ClInclude>
- <ClInclude Include="hoststate.h">
- <Filter>Header Files</Filter>
+ <ClInclude Include="hooks\maxplayers.h">
+ <Filter>Header Files\hooks</Filter>
</ClInclude>
- <ClInclude Include="masterserver.h">
- <Filter>Header Files</Filter>
+ <ClInclude Include="shared\keyvalues.h">
+ <Filter>Header Files\shared</Filter>
</ClInclude>
- <ClInclude Include="memalloc.h">
- <Filter>Header Files</Filter>
+ <ClInclude Include="shared\playlist.h">
+ <Filter>Header Files\shared</Filter>
</ClInclude>
- <ClInclude Include="playlist.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="sourceinterface.h">
- <Filter>Header Files</Filter>
+ <ClInclude Include="client\r2client.h">
+ <Filter>Header Files\client</Filter>
</ClInclude>
- <ClInclude Include="bits.h">
- <Filter>Header Files\Math</Filter>
+ <ClInclude Include="engine\r2engine.h">
+ <Filter>Header Files\engine</Filter>
</ClInclude>
- <ClInclude Include="bitbuf.h">
- <Filter>Header Files\Math</Filter>
+ <ClInclude Include="server\r2server.h">
+ <Filter>Header Files\server</Filter>
</ClInclude>
- <ClInclude Include="convar.h">
- <Filter>Header Files\Convar</Filter>
+ <ClInclude Include="hooks\tier0.h">
+ <Filter>Header Files\hooks</Filter>
</ClInclude>
- <ClInclude Include="concommand.h">
- <Filter>Header Files\Convar</Filter>
+ <ClInclude Include="hooks\memalloc.h">
+ <Filter>Header Files\hooks</Filter>
</ClInclude>
- <ClInclude Include="cvar.h">
- <Filter>Header Files\Convar</Filter>
+ <ClInclude Include="core\convar\concommand.h">
+ <Filter>Header Files\core\convar</Filter>
</ClInclude>
- <ClInclude Include="filesystem.h">
- <Filter>Header Files\Filesystem</Filter>
+ <ClInclude Include="core\convar\convar.h">
+ <Filter>Header Files\core\convar</Filter>
</ClInclude>
- <ClInclude Include="hooks.h">
- <Filter>Header Files\Hooks</Filter>
+ <ClInclude Include="core\convar\cvar.h">
+ <Filter>Header Files\core\convar</Filter>
</ClInclude>
- <ClInclude Include="limits.h">
- <Filter>Header Files\Exploit Fixes</Filter>
+ <ClInclude Include="core\filesystem\filesystem.h">
+ <Filter>Header Files\core\filesystem</Filter>
</ClInclude>
- <ClInclude Include="logging.h">
- <Filter>Header Files\Console</Filter>
+ <ClInclude Include="core\filesystem\rpakfilesystem.h">
+ <Filter>Header Files\core\filesystem</Filter>
</ClInclude>
- <ClInclude Include="misccommands.h">
- <Filter>Header Files\Convar</Filter>
+ <ClInclude Include="core\math\bitbuf.h">
+ <Filter>Header Files\core\math</Filter>
</ClInclude>
- <ClInclude Include="modmanager.h">
- <Filter>Header Files\Mods</Filter>
+ <ClInclude Include="core\math\bits.h">
+ <Filter>Header Files\core\math</Filter>
</ClInclude>
- <ClInclude Include="printcommand.h">
- <Filter>Header Files\Console</Filter>
+ <ClInclude Include="core\math\color.h">
+ <Filter>Header Files\core\math</Filter>
</ClInclude>
- <ClInclude Include="printmaps.h">
- <Filter>Header Files\Console</Filter>
+ <ClInclude Include="core\math\vector.h">
+ <Filter>Header Files\core\math</Filter>
</ClInclude>
- <ClInclude Include="r2client.h">
- <Filter>Header Files\Game Functions</Filter>
+ <ClInclude Include="core\hooks.h">
+ <Filter>Header Files\core</Filter>
</ClInclude>
- <ClInclude Include="r2engine.h">
- <Filter>Header Files\Game Functions</Filter>
+ <ClInclude Include="core\memalloc.h">
+ <Filter>Header Files\core</Filter>
</ClInclude>
- <ClInclude Include="r2server.h">
- <Filter>Header Files\Game Functions</Filter>
+ <ClInclude Include="core\memory.h">
+ <Filter>Header Files\core</Filter>
</ClInclude>
- <ClInclude Include="tier0.h">
- <Filter>Header Files\Game Functions</Filter>
+ <ClInclude Include="core\structs.h">
+ <Filter>Header Files\core</Filter>
</ClInclude>
- <ClInclude Include="rpakfilesystem.h">
- <Filter>Header Files\Filesystem</Filter>
+ <ClInclude Include="core\tier0.h">
+ <Filter>Header Files\core</Filter>
</ClInclude>
- <ClInclude Include="color.h">
- <Filter>Header Files\Math</Filter>
+ <ClInclude Include="logging\crashhandler.h">
+ <Filter>Header Files\logging</Filter>
</ClInclude>
- <ClInclude Include="serverpresence.h">
- <Filter>Header Files\Server</Filter>
+ <ClInclude Include="logging\logging.h">
+ <Filter>Header Files\logging</Filter>
</ClInclude>
- <ClInclude Include="memory.h">
- <Filter>Header Files\Hooks</Filter>
+ <ClInclude Include="logging\loghooks.h">
+ <Filter>Header Files\logging</Filter>
</ClInclude>
- <ClInclude Include="maxplayers.h">
- <Filter>Header Files</Filter>
+ <ClInclude Include="logging\sourceconsole.h">
+ <Filter>Header Files\logging</Filter>
</ClInclude>
- <ClInclude Include="squirrel.h">
- <Filter>Header Files\Squirrel</Filter>
+ <ClInclude Include="server\serverchathooks.h">
+ <Filter>Header Files\server</Filter>
</ClInclude>
- <ClInclude Include="squirreldatatypes.h">
- <Filter>Header Files\Squirrel</Filter>
+ <ClInclude Include="scripts\scripthttprequesthandler.h">
+ <Filter>Header Files\scripts</Filter>
</ClInclude>
- <ClInclude Include="vector.h">
- <Filter>Header Files\Math</Filter>
+ <ClInclude Include="shared\maxplayers.h">
+ <Filter>Header Files\shared</Filter>
</ClInclude>
- <ClInclude Include="squirrelautobind.h">
- <Filter>Header Files\Squirrel</Filter>
+ <ClInclude Include="shared\misccommands.h">
+ <Filter>Header Files\shared</Filter>
</ClInclude>
- <ClInclude Include="keyvalues.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="structs.h">
- <Filter>Header Files</Filter>
+ <ClInclude Include="core\sourceinterface.h">
+ <Filter>Header Files\core</Filter>
</ClInclude>
- <ClInclude Include="loghooks.h">
- <Filter>Header Files\Console</Filter>
+ <ClInclude Include="core\macros.h">
+ <Filter>Header Files\core</Filter>
</ClInclude>
- <ClInclude Include="squirrelclasstypes.h">
- <Filter>Header Files\Squirrel</Filter>
- </ClInclude>
- <ClInclude Include="bots.h">
- <Filter>Header Files\Server</Filter>
+ <ClInclude Include="server\bots.h">
+ <Filter>Header Files\server</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
- <ClCompile Include="pch.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- <ClCompile Include="dedicated.cpp">
- <Filter>Source Files\Dedicated Server</Filter>
- </ClCompile>
- <ClCompile Include="sourceconsole.cpp">
- <Filter>Source Files\Client</Filter>
- </ClCompile>
- <ClCompile Include="modmanager.cpp">
- <Filter>Source Files\Mods</Filter>
+ <None Include="..\include\spdlog\fmt\bundled\LICENSE.rst">
+ <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
+ </None>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="client\audio.cpp">
+ <Filter>Source Files\client</Filter>
</ClCompile>
- <ClCompile Include="modscriptsrson.cpp">
- <Filter>Source Files\Mods\Compiled Assets</Filter>
+ <ClCompile Include="client\chatcommand.cpp">
+ <Filter>Source Files\client</Filter>
</ClCompile>
- <ClCompile Include="serverauthentication.cpp">
- <Filter>Source Files\Server\Authentication</Filter>
+ <ClCompile Include="client\clientauthhooks.cpp">
+ <Filter>Source Files\client</Filter>
</ClCompile>
- <ClCompile Include="modkeyvalues.cpp">
- <Filter>Source Files\Mods\Compiled Assets</Filter>
+ <ClCompile Include="client\clientruihooks.cpp">
+ <Filter>Source Files\client</Filter>
</ClCompile>
- <ClCompile Include="chatcommand.cpp">
- <Filter>Source Files\Client</Filter>
+ <ClCompile Include="client\clientvideooverrides.cpp">
+ <Filter>Source Files\client</Filter>
</ClCompile>
- <ClCompile Include="modlocalisation.cpp">
- <Filter>Source Files\Client</Filter>
+ <ClCompile Include="client\debugoverlay.cpp">
+ <Filter>Source Files\client</Filter>
</ClCompile>
- <ClCompile Include="dedicatedmaterialsystem.cpp">
- <Filter>Source Files\Dedicated Server</Filter>
+ <ClCompile Include="client\demofixes.cpp">
+ <Filter>Source Files\client</Filter>
</ClCompile>
- <ClCompile Include="modpdef.cpp">
- <Filter>Source Files\Mods\Compiled Assets</Filter>
+ <ClCompile Include="client\diskvmtfixes.cpp">
+ <Filter>Source Files\client</Filter>
</ClCompile>
- <ClCompile Include="clientauthhooks.cpp">
- <Filter>Source Files\Client</Filter>
+ <ClCompile Include="client\languagehooks.cpp">
+ <Filter>Source Files\client</Filter>
</ClCompile>
- <ClCompile Include="miscserverfixes.cpp">
- <Filter>Source Files\Server</Filter>
+ <ClCompile Include="client\latencyflex.cpp">
+ <Filter>Source Files\client</Filter>
</ClCompile>
- <ClCompile Include="bansystem.cpp">
- <Filter>Source Files\Server\Authentication</Filter>
+ <ClCompile Include="client\localchatwriter.cpp">
+ <Filter>Source Files\client</Filter>
</ClCompile>
- <ClCompile Include="languagehooks.cpp">
- <Filter>Source Files\Client</Filter>
+ <ClCompile Include="client\modlocalisation.cpp">
+ <Filter>Source Files\client</Filter>
</ClCompile>
- <ClCompile Include="latencyflex.cpp">
- <Filter>Source Files\Client</Filter>
+ <ClCompile Include="dedicated\dedicated.cpp">
+ <Filter>Source Files\dedicated</Filter>
</ClCompile>
- <ClCompile Include="audio.cpp">
- <Filter>Source Files\Client</Filter>
+ <ClCompile Include="dedicated\dedicatedmaterialsystem.cpp">
+ <Filter>Source Files\dedicated</Filter>
</ClCompile>
- <ClCompile Include="buildainfile.cpp">
- <Filter>Source Files\Server</Filter>
+ <ClCompile Include="masterserver\masterserver.cpp">
+ <Filter>Source Files\masterserver</Filter>
</ClCompile>
- <ClCompile Include="localchatwriter.cpp">
- <Filter>Source Files\Client</Filter>
+ <ClCompile Include="mods\modmanager.cpp">
+ <Filter>Source Files\mods</Filter>
</ClCompile>
- <ClCompile Include="plugins.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="mods\compiled\kb_act.cpp">
+ <Filter>Source Files\mods\compiled</Filter>
</ClCompile>
- <ClCompile Include="debugoverlay.cpp">
- <Filter>Source Files\Client</Filter>
+ <ClCompile Include="mods\compiled\modkeyvalues.cpp">
+ <Filter>Source Files\mods\compiled</Filter>
</ClCompile>
- <ClCompile Include="clientvideooverrides.cpp">
- <Filter>Source Files\Client</Filter>
+ <ClCompile Include="mods\compiled\modpdef.cpp">
+ <Filter>Source Files\mods\compiled</Filter>
</ClCompile>
- <ClCompile Include="version.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="mods\compiled\modscriptsrson.cpp">
+ <Filter>Source Files\mods\compiled</Filter>
</ClCompile>
- <ClCompile Include="clientruihooks.cpp">
- <Filter>Source Files\Client</Filter>
+ <ClCompile Include="plugins\plugins.cpp">
+ <Filter>Source Files\plugins</Filter>
</ClCompile>
- <ClCompile Include="scriptmainmenupromos.cpp">
- <Filter>Source Files\Client\Scripted</Filter>
+ <ClCompile Include="scripts\scriptdatatables.cpp">
+ <Filter>Source Files\scripts</Filter>
</ClCompile>
- <ClCompile Include="clientchathooks.cpp">
- <Filter>Source Files\Client\Scripted</Filter>
+ <ClCompile Include="scripts\scriptjson.cpp">
+ <Filter>Source Files\scripts</Filter>
</ClCompile>
- <ClCompile Include="scriptmodmenu.cpp">
- <Filter>Source Files\Client\Scripted</Filter>
+ <ClCompile Include="scripts\scriptutility.cpp">
+ <Filter>Source Files\scripts</Filter>
</ClCompile>
- <ClCompile Include="scriptservertoclientstringcommand.cpp">
- <Filter>Source Files\Client\Scripted</Filter>
+ <ClCompile Include="server\buildainfile.cpp">
+ <Filter>Source Files\server</Filter>
</ClCompile>
- <ClCompile Include="scriptserverbrowser.cpp">
- <Filter>Source Files\Client\Scripted</Filter>
+ <ClCompile Include="server\serverpresence.cpp">
+ <Filter>Source Files\server</Filter>
</ClCompile>
- <ClCompile Include="scriptbrowserhooks.cpp">
- <Filter>Source Files\Client\Scripted</Filter>
+ <ClCompile Include="server\auth\bansystem.cpp">
+ <Filter>Source Files\server\auth</Filter>
</ClCompile>
- <ClCompile Include="serverchathooks.cpp">
- <Filter>Source Files\Server\Scripted</Filter>
+ <ClCompile Include="server\auth\serverauthentication.cpp">
+ <Filter>Source Files\server\auth</Filter>
</ClCompile>
- <ClCompile Include="miscserverscript.cpp">
- <Filter>Source Files\Server\Scripted</Filter>
+ <ClCompile Include="squirrel\squirrel.cpp">
+ <Filter>Source Files\squirrel</Filter>
</ClCompile>
- <ClCompile Include="demofixes.cpp">
- <Filter>Source Files\Client</Filter>
+ <ClCompile Include="squirrel\squirrelautobind.cpp">
+ <Filter>Source Files\squirrel</Filter>
</ClCompile>
- <ClCompile Include="nsprefix.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="util\version.cpp">
+ <Filter>Source Files\util</Filter>
</ClCompile>
<ClCompile Include="dllmain.cpp">
<Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="crashhandler.cpp">
+ <ClCompile Include="pch.cpp">
<Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="host.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="config\profile.cpp">
+ <Filter>Source Files\config</Filter>
</ClCompile>
- <ClCompile Include="hoststate.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="engine\host.cpp">
+ <Filter>Source Files\engine</Filter>
</ClCompile>
- <ClCompile Include="masterserver.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="engine\hoststate.cpp">
+ <Filter>Source Files\engine</Filter>
</ClCompile>
- <ClCompile Include="maxplayers.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="engine\runframe.cpp">
+ <Filter>Source Files\engine</Filter>
</ClCompile>
- <ClCompile Include="memalloc.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="shared\keyvalues.cpp">
+ <Filter>Source Files\shared</Filter>
</ClCompile>
- <ClCompile Include="playlist.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="shared\playlist.cpp">
+ <Filter>Source Files\shared</Filter>
</ClCompile>
- <ClCompile Include="sourceinterface.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="client\r2client.cpp">
+ <Filter>Source Files\client</Filter>
</ClCompile>
- <ClCompile Include="r2server.cpp">
- <Filter>Source Files\Game Functions</Filter>
+ <ClCompile Include="server\r2server.cpp">
+ <Filter>Source Files\server</Filter>
</ClCompile>
- <ClCompile Include="r2client.cpp">
- <Filter>Source Files\Game Functions</Filter>
+ <ClCompile Include="engine\r2engine.cpp">
+ <Filter>Source Files\engine</Filter>
</ClCompile>
- <ClCompile Include="r2engine.cpp">
- <Filter>Source Files\Game Functions</Filter>
+ <ClCompile Include="logging\crashhandler.cpp">
+ <Filter>Source Files\logging</Filter>
</ClCompile>
- <ClCompile Include="rpakfilesystem.cpp">
- <Filter>Source Files\Filesystem</Filter>
+ <ClCompile Include="logging\logging.cpp">
+ <Filter>Source Files\logging</Filter>
</ClCompile>
- <ClCompile Include="filesystem.cpp">
- <Filter>Source Files\Filesystem</Filter>
+ <ClCompile Include="logging\loghooks.cpp">
+ <Filter>Source Files\logging</Filter>
</ClCompile>
- <ClCompile Include="exploitfixes.cpp">
- <Filter>Source Files\Exploit Fixes</Filter>
+ <ClCompile Include="logging\sourceconsole.cpp">
+ <Filter>Source Files\logging</Filter>
</ClCompile>
- <ClCompile Include="limits.cpp">
- <Filter>Source Files\Exploit Fixes</Filter>
+ <ClCompile Include="scripts\client\clientchathooks.cpp">
+ <Filter>Source Files\scripts\client</Filter>
</ClCompile>
- <ClCompile Include="hooks.cpp">
- <Filter>Source Files\Hooks</Filter>
+ <ClCompile Include="scripts\client\scriptbrowserhooks.cpp">
+ <Filter>Source Files\scripts\client</Filter>
</ClCompile>
- <ClCompile Include="bits.cpp">
- <Filter>Source Files\Math</Filter>
+ <ClCompile Include="scripts\client\scriptmainmenupromos.cpp">
+ <Filter>Source Files\scripts\client</Filter>
</ClCompile>
- <ClCompile Include="convar.cpp">
- <Filter>Source Files\Convar</Filter>
+ <ClCompile Include="scripts\client\scriptmodmenu.cpp">
+ <Filter>Source Files\scripts\client</Filter>
</ClCompile>
- <ClCompile Include="concommand.cpp">
- <Filter>Source Files\Convar</Filter>
+ <ClCompile Include="scripts\client\scriptserverbrowser.cpp">
+ <Filter>Source Files\scripts\client</Filter>
</ClCompile>
- <ClCompile Include="printcommands.cpp">
- <Filter>Source Files\Console</Filter>
+ <ClCompile Include="scripts\client\scriptservertoclientstringcommand.cpp">
+ <Filter>Source Files\scripts\client</Filter>
</ClCompile>
- <ClCompile Include="printmaps.cpp">
- <Filter>Source Files\Console</Filter>
+ <ClCompile Include="scripts\server\miscserverfixes.cpp">
+ <Filter>Source Files\scripts\server</Filter>
</ClCompile>
- <ClCompile Include="cvar.cpp">
- <Filter>Source Files\Convar</Filter>
+ <ClCompile Include="scripts\server\miscserverscript.cpp">
+ <Filter>Source Files\scripts\server</Filter>
</ClCompile>
- <ClCompile Include="misccommands.cpp">
- <Filter>Source Files\Convar</Filter>
+ <ClCompile Include="scripts\server\scriptuserinfo.cpp">
+ <Filter>Source Files\scripts\server</Filter>
</ClCompile>
- <ClCompile Include="tier0.cpp">
- <Filter>Source Files\Game Functions</Filter>
+ <ClCompile Include="server\serverchathooks.cpp">
+ <Filter>Source Files\server</Filter>
</ClCompile>
- <ClCompile Include="logging.cpp">
- <Filter>Source Files\Console</Filter>
+ <ClCompile Include="core\convar\concommand.cpp">
+ <Filter>Source Files\core\convar</Filter>
</ClCompile>
- <ClCompile Include="serverpresence.cpp">
- <Filter>Source Files\Server</Filter>
+ <ClCompile Include="core\convar\convar.cpp">
+ <Filter>Source Files\core\convar</Filter>
</ClCompile>
- <ClCompile Include="runframe.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="core\convar\cvar.cpp">
+ <Filter>Source Files\core\convar</Filter>
</ClCompile>
- <ClCompile Include="memory.cpp">
- <Filter>Source Files\Hooks</Filter>
+ <ClCompile Include="core\filesystem\filesystem.cpp">
+ <Filter>Source Files\core\filesystem</Filter>
</ClCompile>
- <ClCompile Include="exploitfixes_lzss.cpp">
- <Filter>Source Files\Exploit Fixes</Filter>
+ <ClCompile Include="core\filesystem\rpakfilesystem.cpp">
+ <Filter>Source Files\core\filesystem</Filter>
</ClCompile>
- <ClCompile Include="scriptutility.cpp">
- <Filter>Source Files\Scripted</Filter>
+ <ClCompile Include="core\math\bits.cpp">
+ <Filter>Source Files\core\math</Filter>
</ClCompile>
- <ClCompile Include="scriptjson.cpp">
- <Filter>Source Files\Scripted</Filter>
+ <ClCompile Include="core\math\color.cpp">
+ <Filter>Source Files\core\math</Filter>
</ClCompile>
- <ClCompile Include="squirrel.cpp">
- <Filter>Source Files\Squirrel</Filter>
+ <ClCompile Include="core\hooks.cpp">
+ <Filter>Source Files\core</Filter>
</ClCompile>
- <ClCompile Include="scriptdatatables.cpp">
- <Filter>Source Files\Scripted</Filter>
+ <ClCompile Include="core\memalloc.cpp">
+ <Filter>Source Files\core</Filter>
</ClCompile>
- <ClCompile Include="squirrelautobind.cpp">
- <Filter>Source Files\Squirrel</Filter>
+ <ClCompile Include="core\memory.cpp">
+ <Filter>Source Files\core</Filter>
</ClCompile>
- <ClCompile Include="kb_act.cpp">
- <Filter>Source Files\Mods\Compiled Assets</Filter>
+ <ClCompile Include="core\tier0.cpp">
+ <Filter>Source Files\core</Filter>
</ClCompile>
- <ClCompile Include="diskvmtfixes.cpp">
- <Filter>Source Files\Client</Filter>
+ <ClCompile Include="shared\exploit_fixes\exploitfixes.cpp">
+ <Filter>Source Files\shared\exploit_fixes</Filter>
</ClCompile>
- <ClCompile Include="keyvalues.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="shared\exploit_fixes\exploitfixes_lzss.cpp">
+ <Filter>Source Files\shared\exploit_fixes</Filter>
</ClCompile>
- <ClCompile Include="scriptuserinfo.cpp">
- <Filter>Source Files\Server\Scripted</Filter>
+ <ClCompile Include="shared\exploit_fixes\exploitfixes_utf8parser.cpp">
+ <Filter>Source Files\shared\exploit_fixes</Filter>
</ClCompile>
- <ClCompile Include="color.cpp">
- <Filter>Source Files\Math</Filter>
+ <ClCompile Include="shared\exploit_fixes\ns_limits.cpp">
+ <Filter>Source Files\shared\exploit_fixes</Filter>
</ClCompile>
- <ClCompile Include="loghooks.cpp">
- <Filter>Source Files\Console</Filter>
+ <ClCompile Include="shared\maxplayers.cpp">
+ <Filter>Source Files\shared</Filter>
</ClCompile>
- <ClCompile Include="rejectconnectionfixes.cpp">
- <Filter>Source Files\Client</Filter>
+ <ClCompile Include="shared\misccommands.cpp">
+ <Filter>Source Files\shared</Filter>
</ClCompile>
- <ClCompile Include="bots.cpp">
- <Filter>Source Files\Server</Filter>
+ <ClCompile Include="util\printcommands.cpp">
+ <Filter>Source Files\util</Filter>
+ </ClCompile>
+ <ClCompile Include="util\printmaps.cpp">
+ <Filter>Source Files\util</Filter>
+ </ClCompile>
+ <ClCompile Include="scripts\scripthttprequesthandler.cpp">
+ <Filter>Source Files\scripts</Filter>
+ </ClCompile>
+ <ClCompile Include="core\sourceinterface.cpp">
+ <Filter>Source Files\core</Filter>
+ </ClCompile>
+ <ClCompile Include="client\rejectconnectionfixes.cpp">
+ <Filter>Source Files\client</Filter>
+ </ClCompile>
+ <ClCompile Include="server\bots.cpp">
+ <Filter>Source Files\server</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<MASM Include="audio_asm.asm">
- <Filter>Source Files\Client</Filter>
+ <Filter>Source Files</Filter>
</MASM>
</ItemGroup>
- <ItemGroup>
- <None Include="include\spdlog\fmt\bundled\LICENSE.rst">
- <Filter>Header Files\include\spdlog\fmt\bundled</Filter>
- </None>
- <None Include="include\openssl\asn1.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\asn1t.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\bio.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\cmp.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\cms.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\conf.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\configuration.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\crmf.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\crypto.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\ct.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\err.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\ess.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\fipskey.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\lhash.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\ocsp.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\opensslv.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\pkcs7.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\pkcs12.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\safestack.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\srp.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\ssl.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\ui.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\x509.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\x509_vfy.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\openssl\x509v3.h.in">
- <Filter>Header Files\include\openssl\openssl</Filter>
- </None>
- <None Include="include\crypto\bn_conf.h.in">
- <Filter>Header Files\include\openssl\crypto</Filter>
- </None>
- <None Include="include\crypto\dso_conf.h.in">
- <Filter>Header Files\include\openssl\crypto</Filter>
- </None>
- </ItemGroup>
</Project>
\ No newline at end of file diff --git a/NorthstarDLL/audio.cpp b/NorthstarDLL/client/audio.cpp index b1592b6f..f0bc385b 100644 --- a/NorthstarDLL/audio.cpp +++ b/NorthstarDLL/client/audio.cpp @@ -1,7 +1,7 @@ #include "pch.h" #include "audio.h" -#include "dedicated.h" -#include "convar.h" +#include "dedicated/dedicated.h" +#include "core/convar/convar.h" #include "rapidjson/error/en.h" #include <fstream> diff --git a/NorthstarDLL/audio.h b/NorthstarDLL/client/audio.h index 26cda205..26cda205 100644 --- a/NorthstarDLL/audio.h +++ b/NorthstarDLL/client/audio.h diff --git a/NorthstarDLL/chatcommand.cpp b/NorthstarDLL/client/chatcommand.cpp index 37c438f3..76ed9784 100644 --- a/NorthstarDLL/chatcommand.cpp +++ b/NorthstarDLL/client/chatcommand.cpp @@ -1,6 +1,6 @@ #include "pch.h" -#include "convar.h" -#include "concommand.h" +#include "core/convar/convar.h" +#include "core/convar/concommand.h" #include "localchatwriter.h" // note: isIngameChat is an int64 because the whole register the arg is stored in needs to be 0'd out to work diff --git a/NorthstarDLL/clientauthhooks.cpp b/NorthstarDLL/client/clientauthhooks.cpp index cd01ad91..904ecb2f 100644 --- a/NorthstarDLL/clientauthhooks.cpp +++ b/NorthstarDLL/client/clientauthhooks.cpp @@ -1,7 +1,7 @@ #include "pch.h" -#include "masterserver.h" -#include "convar.h" -#include "r2client.h" +#include "masterserver/masterserver.h" +#include "core/convar/convar.h" +#include "client/r2client.h" AUTOHOOK_INIT() diff --git a/NorthstarDLL/clientruihooks.cpp b/NorthstarDLL/client/clientruihooks.cpp index 3cb08368..7896daa8 100644 --- a/NorthstarDLL/clientruihooks.cpp +++ b/NorthstarDLL/client/clientruihooks.cpp @@ -1,5 +1,5 @@ #include "pch.h" -#include "convar.h" +#include "core/convar/convar.h" AUTOHOOK_INIT() diff --git a/NorthstarDLL/clientvideooverrides.cpp b/NorthstarDLL/client/clientvideooverrides.cpp index e4d96ff5..1a5924c7 100644 --- a/NorthstarDLL/clientvideooverrides.cpp +++ b/NorthstarDLL/client/clientvideooverrides.cpp @@ -1,5 +1,5 @@ #include "pch.h" -#include "modmanager.h" +#include "mods/modmanager.h" AUTOHOOK_INIT() diff --git a/NorthstarDLL/debugoverlay.cpp b/NorthstarDLL/client/debugoverlay.cpp index ef456867..dd273227 100644 --- a/NorthstarDLL/debugoverlay.cpp +++ b/NorthstarDLL/client/debugoverlay.cpp @@ -1,7 +1,7 @@ #include "pch.h" -#include "dedicated.h" -#include "cvar.h" -#include "vector.h" +#include "dedicated/dedicated.h" +#include "core/convar/cvar.h" +#include "core/math/vector.h" AUTOHOOK_INIT() diff --git a/NorthstarDLL/demofixes.cpp b/NorthstarDLL/client/demofixes.cpp index ab092484..5fb49918 100644 --- a/NorthstarDLL/demofixes.cpp +++ b/NorthstarDLL/client/demofixes.cpp @@ -1,5 +1,5 @@ #include "pch.h" -#include "convar.h" +#include "core/convar/convar.h" ON_DLL_LOAD_CLIENT("engine.dll", EngineDemoFixes, (CModule module)) { diff --git a/NorthstarDLL/diskvmtfixes.cpp b/NorthstarDLL/client/diskvmtfixes.cpp index f5f3e2cd..cd762c8a 100644 --- a/NorthstarDLL/diskvmtfixes.cpp +++ b/NorthstarDLL/client/diskvmtfixes.cpp @@ -1,16 +1,16 @@ -#include "pch.h"
-
-ON_DLL_LOAD_CLIENT("materialsystem_dx11.dll", DiskVMTFixes, (CModule module))
-{
- // in retail VMTs will never load if cache read is invalid due to a special case for them in KeyValues::LoadFromFile
- // this effectively makes it impossible to load them from mods because we invalidate cache for doing this
- // so uhh, stop that from happening
-
- // tbh idk why they even changed any of this what's the point it looks like it works fine who cares my god
-
- // matsystem KeyValues::LoadFromFile: patch special case on cache read failure for vmts
- module.Offset(0x1281B9).Patch("EB");
-
- // CMaterialSystem::FindMaterial: don't call function that crashes if previous patch is applied
- module.Offset(0x5F55A).NOP(5);
-}
+#include "pch.h" + +ON_DLL_LOAD_CLIENT("materialsystem_dx11.dll", DiskVMTFixes, (CModule module)) +{ + // in retail VMTs will never load if cache read is invalid due to a special case for them in KeyValues::LoadFromFile + // this effectively makes it impossible to load them from mods because we invalidate cache for doing this + // so uhh, stop that from happening + + // tbh idk why they even changed any of this what's the point it looks like it works fine who cares my god + + // matsystem KeyValues::LoadFromFile: patch special case on cache read failure for vmts + module.Offset(0x1281B9).Patch("EB"); + + // CMaterialSystem::FindMaterial: don't call function that crashes if previous patch is applied + module.Offset(0x5F55A).NOP(5); +} diff --git a/NorthstarDLL/languagehooks.cpp b/NorthstarDLL/client/languagehooks.cpp index d00beb68..1a46633c 100644 --- a/NorthstarDLL/languagehooks.cpp +++ b/NorthstarDLL/client/languagehooks.cpp @@ -1,5 +1,5 @@ #include "pch.h" -#include "tier0.h" +#include "core/tier0.h" #include <filesystem> #include <regex> diff --git a/NorthstarDLL/latencyflex.cpp b/NorthstarDLL/client/latencyflex.cpp index 620e031a..a1ef72ca 100644 --- a/NorthstarDLL/latencyflex.cpp +++ b/NorthstarDLL/client/latencyflex.cpp @@ -1,5 +1,5 @@ #include "pch.h" -#include "convar.h" +#include "core/convar/convar.h" AUTOHOOK_INIT() diff --git a/NorthstarDLL/localchatwriter.cpp b/NorthstarDLL/client/localchatwriter.cpp index efa7eeee..efa7eeee 100644 --- a/NorthstarDLL/localchatwriter.cpp +++ b/NorthstarDLL/client/localchatwriter.cpp diff --git a/NorthstarDLL/localchatwriter.h b/NorthstarDLL/client/localchatwriter.h index 0df0cac8..8bb1fb2f 100644 --- a/NorthstarDLL/localchatwriter.h +++ b/NorthstarDLL/client/localchatwriter.h @@ -1,6 +1,6 @@ #pragma once #include "pch.h" -#include "color.h" +#include "core/math/color.h" class vgui_BaseRichText; diff --git a/NorthstarDLL/modlocalisation.cpp b/NorthstarDLL/client/modlocalisation.cpp index b12f0a40..430e3a5f 100644 --- a/NorthstarDLL/modlocalisation.cpp +++ b/NorthstarDLL/client/modlocalisation.cpp @@ -1,5 +1,5 @@ #include "pch.h" -#include "modmanager.h" +#include "mods/modmanager.h" AUTOHOOK_INIT() diff --git a/NorthstarDLL/r2client.cpp b/NorthstarDLL/client/r2client.cpp index 2e7bd564..2e7bd564 100644 --- a/NorthstarDLL/r2client.cpp +++ b/NorthstarDLL/client/r2client.cpp diff --git a/NorthstarDLL/r2client.h b/NorthstarDLL/client/r2client.h index 64ed6c61..64ed6c61 100644 --- a/NorthstarDLL/r2client.h +++ b/NorthstarDLL/client/r2client.h diff --git a/NorthstarDLL/rejectconnectionfixes.cpp b/NorthstarDLL/client/rejectconnectionfixes.cpp index bfce2043..994e9747 100644 --- a/NorthstarDLL/rejectconnectionfixes.cpp +++ b/NorthstarDLL/client/rejectconnectionfixes.cpp @@ -1,6 +1,5 @@ #include "pch.h"
-#include "hoststate.h"
-#include "r2engine.h"
+#include "engine/r2engine.h"
AUTOHOOK_INIT()
@@ -22,7 +21,9 @@ void,, (bool a1, const char* fmt, ...)) // when COM_ExplainDisconnection is called from engine.dll + 19ff1c for connection rejected, it doesn't
// call Host_Disconnect, which properly shuts down listen server
// not doing this gets our client in a pretty weird state so we need to shut it down manually here
- R2::g_pHostState->m_iNextState = R2::HostState_t::HS_GAME_SHUTDOWN;
+
+ // don't call Cbuf_Execute because we don't need this called immediately
+ R2::Cbuf_AddText(R2::Cbuf_GetCurrentPlayer(), "disconnect", R2::cmd_source_t::kCommandSrcCode);
}
return COM_ExplainDisconnection(a1, buf);
diff --git a/NorthstarDLL/nsprefix.cpp b/NorthstarDLL/config/profile.cpp index 8057865e..7518a2b3 100644 --- a/NorthstarDLL/nsprefix.cpp +++ b/NorthstarDLL/config/profile.cpp @@ -1,6 +1,6 @@ #include "pch.h" -#include "nsprefix.h" -#include "dedicated.h" +#include "config/profile.h" +#include "dedicated/dedicated.h" #include <string> std::string GetNorthstarPrefix() diff --git a/NorthstarDLL/nsprefix.h b/NorthstarDLL/config/profile.h index 9f3087fb..9f3087fb 100644 --- a/NorthstarDLL/nsprefix.h +++ b/NorthstarDLL/config/profile.h diff --git a/NorthstarDLL/concommand.cpp b/NorthstarDLL/core/convar/concommand.cpp index 6d77e137..02c9e50f 100644 --- a/NorthstarDLL/concommand.cpp +++ b/NorthstarDLL/core/convar/concommand.cpp @@ -1,6 +1,6 @@ #include "pch.h" #include "concommand.h" -#include "misccommands.h" +#include "shared/misccommands.h" #include <iostream> diff --git a/NorthstarDLL/concommand.h b/NorthstarDLL/core/convar/concommand.h index 89363bc7..89363bc7 100644 --- a/NorthstarDLL/concommand.h +++ b/NorthstarDLL/core/convar/concommand.h diff --git a/NorthstarDLL/convar.cpp b/NorthstarDLL/core/convar/convar.cpp index 80f93c64..11411c0a 100644 --- a/NorthstarDLL/convar.cpp +++ b/NorthstarDLL/core/convar/convar.cpp @@ -2,7 +2,7 @@ #include "bits.h" #include "cvar.h" #include "convar.h" -#include "sourceinterface.h" +#include "core/sourceinterface.h" #include <float.h> @@ -315,7 +315,7 @@ void ConVar::SetValue(const char* pszValue) { // Not a color, do the standard thing float flNewValue = (float)atof(pszValue); - if (!IsFinite(flNewValue)) + if (!isfinite(flNewValue)) { spdlog::warn("Warning: ConVar '{}' = '{}' is infinite, clamping value.\n", GetBaseName(), pszValue); flNewValue = FLT_MAX; @@ -488,3 +488,43 @@ bool ConVar::ClampValue(float& flValue) return false; } + +int ParseConVarFlagsString(std::string modName, std::string sFlags) +{ + sFlags += '|'; // add additional | so we register the last flag + std::string sCurrentFlag; + + for (int i = 0; i < sFlags.length(); i++) + { + if (isspace(sFlags[i])) + continue; + + // if we encounter a |, add current string as a flag + if (sFlags[i] == '|') + { + bool bHasFlags = false; + int iCurrentFlags; + + for (auto& flagPair : g_PrintCommandFlags) + { + if (!sCurrentFlag.compare(flagPair.second)) + { + iCurrentFlags = flagPair.first; + bHasFlags = true; + break; + } + } + + if (bHasFlags) + return iCurrentFlags; + else + spdlog::warn("Mod ConCommand {} has unknown flag {}", modName, sCurrentFlag); + + sCurrentFlag = ""; + } + else + { + sCurrentFlag += sFlags[i]; + } + } +} diff --git a/NorthstarDLL/convar.h b/NorthstarDLL/core/convar/convar.h index 176d0d72..4b00e25f 100644 --- a/NorthstarDLL/convar.h +++ b/NorthstarDLL/core/convar/convar.h @@ -1,6 +1,6 @@ #pragma once -#include "sourceinterface.h" -#include "color.h" +#include "core/sourceinterface.h" +#include "core/math/color.h" #include "cvar.h" #include "concommand.h" @@ -190,3 +190,5 @@ class ConVar void* m_pMalloc {}; // 0x0070 char m_pPad80[10] {}; // 0x0080 }; // Size: 0x0080 + +int ParseConVarFlagsString(std::string modName, std::string flags); diff --git a/NorthstarDLL/cvar.cpp b/NorthstarDLL/core/convar/cvar.cpp index 787790be..787790be 100644 --- a/NorthstarDLL/cvar.cpp +++ b/NorthstarDLL/core/convar/cvar.cpp diff --git a/NorthstarDLL/cvar.h b/NorthstarDLL/core/convar/cvar.h index e65e5145..3a3e1815 100644 --- a/NorthstarDLL/cvar.h +++ b/NorthstarDLL/core/convar/cvar.h @@ -1,6 +1,5 @@ #pragma once #include "convar.h" -#include "pch.h" //----------------------------------------------------------------------------- // Forward declarations diff --git a/NorthstarDLL/filesystem.cpp b/NorthstarDLL/core/filesystem/filesystem.cpp index 6ac6cc43..ac42d00f 100644 --- a/NorthstarDLL/filesystem.cpp +++ b/NorthstarDLL/core/filesystem/filesystem.cpp @@ -1,7 +1,7 @@ #include "pch.h" #include "filesystem.h" -#include "sourceinterface.h" -#include "modmanager.h" +#include "core/sourceinterface.h" +#include "mods/modmanager.h" #include <iostream> #include <sstream> diff --git a/NorthstarDLL/filesystem.h b/NorthstarDLL/core/filesystem/filesystem.h index 9a22893a..560b8c2c 100644 --- a/NorthstarDLL/filesystem.h +++ b/NorthstarDLL/core/filesystem/filesystem.h @@ -1,5 +1,5 @@ #pragma once -#include "sourceinterface.h" +#include "core/sourceinterface.h" // taken from ttf2sdk typedef void* FileHandle_t; diff --git a/NorthstarDLL/rpakfilesystem.cpp b/NorthstarDLL/core/filesystem/rpakfilesystem.cpp index f6de514b..b46218e0 100644 --- a/NorthstarDLL/rpakfilesystem.cpp +++ b/NorthstarDLL/core/filesystem/rpakfilesystem.cpp @@ -1,8 +1,8 @@ #include "pch.h" #include "rpakfilesystem.h" -#include "modmanager.h" -#include "dedicated.h" -#include "tier0.h" +#include "mods/modmanager.h" +#include "dedicated/dedicated.h" +#include "core/tier0.h" AUTOHOOK_INIT() diff --git a/NorthstarDLL/rpakfilesystem.h b/NorthstarDLL/core/filesystem/rpakfilesystem.h index 3f608dba..3f608dba 100644 --- a/NorthstarDLL/rpakfilesystem.h +++ b/NorthstarDLL/core/filesystem/rpakfilesystem.h diff --git a/NorthstarDLL/hooks.cpp b/NorthstarDLL/core/hooks.cpp index cc1c284d..79bcbb92 100644 --- a/NorthstarDLL/hooks.cpp +++ b/NorthstarDLL/core/hooks.cpp @@ -1,5 +1,5 @@ #include "pch.h" -#include "dedicated.h" +#include "dedicated/dedicated.h" #include <iostream> #include <wchar.h> diff --git a/NorthstarDLL/hooks.h b/NorthstarDLL/core/hooks.h index f47791fb..f47791fb 100644 --- a/NorthstarDLL/hooks.h +++ b/NorthstarDLL/core/hooks.h diff --git a/NorthstarDLL/core/macros.h b/NorthstarDLL/core/macros.h new file mode 100644 index 00000000..ae944cca --- /dev/null +++ b/NorthstarDLL/core/macros.h @@ -0,0 +1,19 @@ +#pragma once +template <typename ReturnType, typename... Args> ReturnType CallVFunc(int index, void* thisPtr, Args... args) +{ + return (*reinterpret_cast<ReturnType(__fastcall***)(void*, Args...)>(thisPtr))[index](thisPtr, args...); +} + +template <typename T, size_t index, typename... Args> constexpr T CallVFunc_Alt(void* classBase, Args... args) noexcept +{ + return ((*(T(__thiscall***)(void*, Args...))(classBase))[index])(classBase, args...); +} + +#define STR_HASH(s) (std::hash<std::string>()(s)) + +// Example usage: M_VMETHOD(int, GetEntityIndex, 8, (CBaseEntity* ent), (this, ent)) +#define M_VMETHOD(returnType, name, index, args, argsRaw) \ + FORCEINLINE returnType name args noexcept \ + { \ + return CallVFunc_Alt<returnType, index> argsRaw; \ + } diff --git a/NorthstarDLL/bitbuf.h b/NorthstarDLL/core/math/bitbuf.h index 8e8e216f..8e8e216f 100644 --- a/NorthstarDLL/bitbuf.h +++ b/NorthstarDLL/core/math/bitbuf.h diff --git a/NorthstarDLL/bits.cpp b/NorthstarDLL/core/math/bits.cpp index 014899f2..014899f2 100644 --- a/NorthstarDLL/bits.cpp +++ b/NorthstarDLL/core/math/bits.cpp diff --git a/NorthstarDLL/bits.h b/NorthstarDLL/core/math/bits.h index 0532a9bd..0532a9bd 100644 --- a/NorthstarDLL/bits.h +++ b/NorthstarDLL/core/math/bits.h diff --git a/NorthstarDLL/color.cpp b/NorthstarDLL/core/math/color.cpp index 05cf645f..05cf645f 100644 --- a/NorthstarDLL/color.cpp +++ b/NorthstarDLL/core/math/color.cpp diff --git a/NorthstarDLL/color.h b/NorthstarDLL/core/math/color.h index 4dc9b36e..4dc9b36e 100644 --- a/NorthstarDLL/color.h +++ b/NorthstarDLL/core/math/color.h diff --git a/NorthstarDLL/vector.h b/NorthstarDLL/core/math/vector.h index c06e0bba..95eae7ca 100644 --- a/NorthstarDLL/vector.h +++ b/NorthstarDLL/core/math/vector.h @@ -1,52 +1,52 @@ -#pragma once
-
-union Vector3
-{
- struct
- {
- float x;
- float y;
- float z;
- };
-
- float raw[3];
-
- Vector3() : x(0), y(0), z(0) {}
- Vector3(float x, float y, float z) : x(x), y(y), z(z) {}
- Vector3(float* pRawFloats) // assumes float[3] => vector
- {
- memcpy(raw, pRawFloats, sizeof(this));
- }
-
- void MakeValid()
- {
- for (auto& fl : raw)
- if (isnan(fl))
- fl = 0;
- }
-
- // todo: more operators maybe
- bool operator==(const Vector3& other)
- {
- return x == other.x && y == other.y && z == other.z;
- }
-};
-
-union QAngle
-{
- struct
- {
- float x;
- float y;
- float z;
- float w;
- };
-
- float raw[4];
-
- // todo: more operators maybe
- bool operator==(const QAngle& other)
- {
- return x == other.x && y == other.y && z == other.z && w == other.w;
- }
-};
+#pragma once + +union Vector3 +{ + struct + { + float x; + float y; + float z; + }; + + float raw[3]; + + Vector3() : x(0), y(0), z(0) {} + Vector3(float x, float y, float z) : x(x), y(y), z(z) {} + Vector3(float* pRawFloats) // assumes float[3] => vector + { + memcpy(raw, pRawFloats, sizeof(this)); + } + + void MakeValid() + { + for (auto& fl : raw) + if (isnan(fl)) + fl = 0; + } + + // todo: more operators maybe + bool operator==(const Vector3& other) + { + return x == other.x && y == other.y && z == other.z; + } +}; + +union QAngle +{ + struct + { + float x; + float y; + float z; + float w; + }; + + float raw[4]; + + // todo: more operators maybe + bool operator==(const QAngle& other) + { + return x == other.x && y == other.y && z == other.z && w == other.w; + } +}; diff --git a/NorthstarDLL/memalloc.cpp b/NorthstarDLL/core/memalloc.cpp index 8c0fafc8..122ab444 100644 --- a/NorthstarDLL/memalloc.cpp +++ b/NorthstarDLL/core/memalloc.cpp @@ -1,6 +1,6 @@ #include "pch.h" -#include "memalloc.h" -#include "tier0.h" +#include "core/memalloc.h" +#include "core/tier0.h" using namespace Tier0; diff --git a/NorthstarDLL/memalloc.h b/NorthstarDLL/core/memalloc.h index fdd6474b..7df68429 100644 --- a/NorthstarDLL/memalloc.h +++ b/NorthstarDLL/core/memalloc.h @@ -1,6 +1,6 @@ #pragma once -#include "include/rapidjson/document.h" +#include "rapidjson/document.h" //#include "include/rapidjson/allocators.h" extern "C" void* _malloc_base(size_t size); diff --git a/NorthstarDLL/memory.cpp b/NorthstarDLL/core/memory.cpp index 2e994fb2..5e7c3e78 100644 --- a/NorthstarDLL/memory.cpp +++ b/NorthstarDLL/core/memory.cpp @@ -132,7 +132,7 @@ inline std::vector<uint8_t> HexBytesToString(const char* pHexString) } else { - assert(false, "Failed to parse invalid hex string."); + assert_msg(false, "Failed to parse invalid hex string."); val = -1; } @@ -324,7 +324,7 @@ inline std::pair<std::vector<uint8_t>, std::string> MaskedBytesFromPattern(const } else { - assert(false, "Failed to parse invalid pattern string."); + assert_msg(false, "Failed to parse invalid pattern string."); val = -1; } diff --git a/NorthstarDLL/memory.h b/NorthstarDLL/core/memory.h index 38c76cb3..38c76cb3 100644 --- a/NorthstarDLL/memory.h +++ b/NorthstarDLL/core/memory.h diff --git a/NorthstarDLL/sourceinterface.cpp b/NorthstarDLL/core/sourceinterface.cpp index d5f7b7cd..f9ad694c 100644 --- a/NorthstarDLL/sourceinterface.cpp +++ b/NorthstarDLL/core/sourceinterface.cpp @@ -1,6 +1,6 @@ #include "pch.h" #include "sourceinterface.h" -#include "sourceconsole.h" +#include "logging/sourceconsole.h" AUTOHOOK_INIT() diff --git a/NorthstarDLL/sourceinterface.h b/NorthstarDLL/core/sourceinterface.h index 474e961b..474e961b 100644 --- a/NorthstarDLL/sourceinterface.h +++ b/NorthstarDLL/core/sourceinterface.h diff --git a/NorthstarDLL/structs.h b/NorthstarDLL/core/structs.h index 939fd302..ac29f711 100644 --- a/NorthstarDLL/structs.h +++ b/NorthstarDLL/core/structs.h @@ -45,16 +45,15 @@ OFFSET_STRUCT(Name) #define IIF_1(t, ...) t #define PROBE(x) x, 1 - #define MSVC_VA_ARGS_WORKAROUND(define, args) define args #define CHECK(...) MSVC_VA_ARGS_WORKAROUND(CHECK_N, (__VA_ARGS__, 0)) -#define CHECK_N(x, n, ...) n - #define DO_PROBE(offset) PROBE_PROXY(OFFSET_##offset) // concatenate prefix with offset #define PROBE_PROXY(...) PROBE_PRIMITIVE(__VA_ARGS__) // expand arguments #define PROBE_PRIMITIVE(x) PROBE_COMBINE_##x // merge #define PROBE_COMBINE_(...) PROBE(~) // if merge successful, expand to probe +#define CHECK_N(x, n, ...) n + #define IS_0(offset) CHECK(DO_PROBE(offset)) #define FIELD(offset, signature) IIF(IS_0(offset))(STRUCT_FIELD_NOOFFSET, STRUCT_FIELD_OFFSET)(offset, signature) diff --git a/NorthstarDLL/tier0.cpp b/NorthstarDLL/core/tier0.cpp index 61ad7783..61ad7783 100644 --- a/NorthstarDLL/tier0.cpp +++ b/NorthstarDLL/core/tier0.cpp diff --git a/NorthstarDLL/tier0.h b/NorthstarDLL/core/tier0.h index 92a63027..92a63027 100644 --- a/NorthstarDLL/tier0.h +++ b/NorthstarDLL/core/tier0.h diff --git a/NorthstarDLL/dedicated.cpp b/NorthstarDLL/dedicated/dedicated.cpp index 7ba62d24..33a3f034 100644 --- a/NorthstarDLL/dedicated.cpp +++ b/NorthstarDLL/dedicated/dedicated.cpp @@ -1,12 +1,12 @@ #include "pch.h" #include "dedicated.h" -#include "tier0.h" +#include "core/tier0.h" #include "playlist.h" -#include "r2engine.h" -#include "hoststate.h" -#include "serverauthentication.h" -#include "masterserver.h" -#include "printcommand.h" +#include "engine/r2engine.h" +#include "engine/hoststate.h" +#include "server/auth/serverauthentication.h" +#include "masterserver/masterserver.h" +#include "util/printcommands.h" AUTOHOOK_INIT() diff --git a/NorthstarDLL/dedicated.h b/NorthstarDLL/dedicated/dedicated.h index 82806763..82806763 100644 --- a/NorthstarDLL/dedicated.h +++ b/NorthstarDLL/dedicated/dedicated.h diff --git a/NorthstarDLL/dedicatedmaterialsystem.cpp b/NorthstarDLL/dedicated/dedicatedmaterialsystem.cpp index 28ee9b76..37b74576 100644 --- a/NorthstarDLL/dedicatedmaterialsystem.cpp +++ b/NorthstarDLL/dedicated/dedicatedmaterialsystem.cpp @@ -1,6 +1,6 @@ #include "pch.h" #include "dedicated.h" -#include "tier0.h" +#include "core/tier0.h" AUTOHOOK_INIT() diff --git a/NorthstarDLL/dllmain.cpp b/NorthstarDLL/dllmain.cpp index 44d973f2..cd52940d 100644 --- a/NorthstarDLL/dllmain.cpp +++ b/NorthstarDLL/dllmain.cpp @@ -1,13 +1,13 @@ #include "pch.h" -#include "main.h" -#include "logging.h" -#include "crashhandler.h" -#include "memalloc.h" -#include "nsprefix.h" -#include "plugin_abi.h" -#include "plugins.h" -#include "version.h" -#include "pch.h" +#include "dllmain.h" +#include "logging/logging.h" +#include "logging/crashhandler.h" +#include "core/memalloc.h" +#include "config/profile.h" +#include "plugins/plugin_abi.h" +#include "plugins/plugins.h" +#include "util/version.h" +#include "squirrel/squirrel.h" #include "rapidjson/document.h" #include "rapidjson/stringbuffer.h" diff --git a/NorthstarDLL/main.h b/NorthstarDLL/dllmain.h index 412f1e25..412f1e25 100644 --- a/NorthstarDLL/main.h +++ b/NorthstarDLL/dllmain.h diff --git a/NorthstarDLL/host.cpp b/NorthstarDLL/engine/host.cpp index 87b1ce4e..a55c8dfd 100644 --- a/NorthstarDLL/host.cpp +++ b/NorthstarDLL/engine/host.cpp @@ -1,14 +1,12 @@ #include "pch.h" -#include "convar.h" -#include "modmanager.h" -#include "printcommand.h" -#include "printmaps.h" -#include "misccommands.h" +#include "core/convar/convar.h" +#include "mods/modmanager.h" +#include "util/printcommands.h" +#include "util/printmaps.h" +#include "shared/misccommands.h" #include "r2engine.h" -#include "tier0.h" - +#include "core/tier0.h" AUTOHOOK_INIT() - // clang-format off AUTOHOOK(Host_Init, engine.dll + 0x155EA0, void, __fastcall, (bool bDedicated)) @@ -16,13 +14,10 @@ void, __fastcall, (bool bDedicated)) { spdlog::info("Host_Init()"); Host_Init(bDedicated); - FixupCvarFlags(); - // need to initialise these after host_init since they do stuff to preexisting concommands/convars without being client/server specific InitialiseCommandPrint(); InitialiseMapsPrint(); - // client/server autoexecs on necessary platforms // dedi needs autoexec_ns_server on boot, while non-dedi will run it on on listen server start if (bDedicated) @@ -30,7 +25,6 @@ void, __fastcall, (bool bDedicated)) else R2::Cbuf_AddText(R2::Cbuf_GetCurrentPlayer(), "exec autoexec_ns_client", R2::cmd_source_t::kCommandSrcCode); } - ON_DLL_LOAD("engine.dll", Host_Init, (CModule module)) { AUTOHOOK_DISPATCH() diff --git a/NorthstarDLL/hoststate.cpp b/NorthstarDLL/engine/hoststate.cpp index 54ef67a5..d474b908 100644 --- a/NorthstarDLL/hoststate.cpp +++ b/NorthstarDLL/engine/hoststate.cpp @@ -1,13 +1,13 @@ #include "pch.h" -#include "hoststate.h" -#include "masterserver.h" -#include "serverauthentication.h" -#include "serverpresence.h" -#include "playlist.h" -#include "tier0.h" -#include "r2engine.h" -#include "limits.h" -#include "squirrel.h" +#include "engine/hoststate.h" +#include "masterserver/masterserver.h" +#include "server/auth/serverauthentication.h" +#include "server/serverpresence.h" +#include "shared/playlist.h" +#include "core/tier0.h" +#include "engine/r2engine.h" +#include "shared/exploit_fixes/ns_limits.h" +#include "squirrel/squirrel.h" AUTOHOOK_INIT() @@ -65,6 +65,34 @@ void, __fastcall, (CHostState* self)) } // clang-format off +AUTOHOOK(CHostState__State_LoadGame, engine.dll + 0x16E730, +void, __fastcall, (CHostState* self)) +// clang-format on +{ + // singleplayer server starting + // useless in 99% of cases but without it things could potentially break very much + + spdlog::info("HostState: LoadGame"); + + Cbuf_AddText(Cbuf_GetCurrentPlayer(), "exec autoexec_ns_server", cmd_source_t::kCommandSrcCode); + Cbuf_Execute(); + + // this is normally done in ServerStartingOrChangingMap(), but seemingly the map name isn't set at this point + g_pCVar->FindVar("net_data_block_enabled")->SetValue(true); + g_pServerAuthentication->m_bStartingLocalSPGame = true; + + double dStartTime = Tier0::Plat_FloatTime(); + CHostState__State_LoadGame(self); + spdlog::info("loading took {}s", Tier0::Plat_FloatTime() - dStartTime); + + // no server presence, can't do it because no map name in hoststate + // and also not super important for sp saves really + + g_pServerAuthentication->StartPlayerAuthServer(); + g_pServerAuthentication->m_bNeedLocalAuthForNewgame = false; +} + +// clang-format off AUTOHOOK(CHostState__State_ChangeLevelMP, engine.dll + 0x16E520, void, __fastcall, (CHostState* self)) // clang-format on diff --git a/NorthstarDLL/hoststate.h b/NorthstarDLL/engine/hoststate.h index a77385ef..a77385ef 100644 --- a/NorthstarDLL/hoststate.h +++ b/NorthstarDLL/engine/hoststate.h diff --git a/NorthstarDLL/r2engine.cpp b/NorthstarDLL/engine/r2engine.cpp index 11233a2d..11233a2d 100644 --- a/NorthstarDLL/r2engine.cpp +++ b/NorthstarDLL/engine/r2engine.cpp diff --git a/NorthstarDLL/r2engine.h b/NorthstarDLL/engine/r2engine.h index c816ec86..237ddc0a 100644 --- a/NorthstarDLL/r2engine.h +++ b/NorthstarDLL/engine/r2engine.h @@ -1,5 +1,5 @@ #pragma once -#include "keyvalues.h" +#include "shared/keyvalues.h" // use the R2 namespace for game funcs namespace R2 diff --git a/NorthstarDLL/runframe.cpp b/NorthstarDLL/engine/runframe.cpp index eb401f51..d81356f2 100644 --- a/NorthstarDLL/runframe.cpp +++ b/NorthstarDLL/engine/runframe.cpp @@ -1,11 +1,10 @@ #include "pch.h" -#include "r2engine.h" -#include "r2server.h" +#include "engine/r2engine.h" +#include "server/r2server.h" #include "hoststate.h" -#include "serverpresence.h" +#include "server/serverpresence.h" AUTOHOOK_INIT() - // clang-format off AUTOHOOK(CEngine__Frame, engine.dll + 0x1C8650, void, __fastcall, (R2::CEngine* self)) @@ -13,7 +12,6 @@ void, __fastcall, (R2::CEngine* self)) { CEngine__Frame(self); } - ON_DLL_LOAD("engine.dll", RunFrame, (CModule module)) { AUTOHOOK_DISPATCH() diff --git a/NorthstarDLL/crashhandler.cpp b/NorthstarDLL/logging/crashhandler.cpp index be09f870..d4a54169 100644 --- a/NorthstarDLL/crashhandler.cpp +++ b/NorthstarDLL/logging/crashhandler.cpp @@ -1,9 +1,9 @@ #include "pch.h" #include "crashhandler.h" -#include "dedicated.h" -#include "nsprefix.h" -#include "version.h" -#include "modmanager.h" +#include "dedicated/dedicated.h" +#include "config/profile.h" +#include "util/version.h" +#include "mods/modmanager.h" #include <minidumpapiset.h> diff --git a/NorthstarDLL/crashhandler.h b/NorthstarDLL/logging/crashhandler.h index 4d8a59ce..4d8a59ce 100644 --- a/NorthstarDLL/crashhandler.h +++ b/NorthstarDLL/logging/crashhandler.h diff --git a/NorthstarDLL/logging.cpp b/NorthstarDLL/logging/logging.cpp index 2184bd3f..6bb57170 100644 --- a/NorthstarDLL/logging.cpp +++ b/NorthstarDLL/logging/logging.cpp @@ -1,9 +1,9 @@ #include "pch.h" #include "logging.h" -#include "convar.h" -#include "concommand.h" -#include "nsprefix.h" -#include "tier0.h" +#include "core/convar/convar.h" +#include "core/convar/concommand.h" +#include "config/profile.h" +#include "core/tier0.h" #include "spdlog/sinks/basic_file_sink.h" #include <iomanip> diff --git a/NorthstarDLL/logging.h b/NorthstarDLL/logging/logging.h index a75dce91..b710915e 100644 --- a/NorthstarDLL/logging.h +++ b/NorthstarDLL/logging/logging.h @@ -2,8 +2,8 @@ #include "pch.h" #include "spdlog/sinks/base_sink.h" #include "spdlog/logger.h" -#include "squirrel.h" -#include "color.h" +#include "squirrel/squirrel.h" +#include "core/math/color.h" void CreateLogFiles(); void InitialiseLogging(); diff --git a/NorthstarDLL/loghooks.cpp b/NorthstarDLL/logging/loghooks.cpp index 316d34ae..d09f23cc 100644 --- a/NorthstarDLL/loghooks.cpp +++ b/NorthstarDLL/logging/loghooks.cpp @@ -1,12 +1,12 @@ #include "pch.h" #include "logging.h" #include "loghooks.h" -#include "convar.h" -#include "concommand.h" -#include "bitbuf.h" -#include "nsprefix.h" -#include "tier0.h" - +#include "core/convar/convar.h" +#include "core/convar/concommand.h" +#include "core/math/bitbuf.h" +#include "config/profile.h" +#include "core/tier0.h" +#include "squirrel/squirrel.h" #include <iomanip> #include <sstream> diff --git a/NorthstarDLL/loghooks.h b/NorthstarDLL/logging/loghooks.h index 6f70f09b..6f70f09b 100644 --- a/NorthstarDLL/loghooks.h +++ b/NorthstarDLL/logging/loghooks.h diff --git a/NorthstarDLL/sourceconsole.cpp b/NorthstarDLL/logging/sourceconsole.cpp index 0048ac4c..775caa49 100644 --- a/NorthstarDLL/sourceconsole.cpp +++ b/NorthstarDLL/logging/sourceconsole.cpp @@ -1,9 +1,9 @@ #include "pch.h" -#include "convar.h" +#include "core/convar/convar.h" #include "sourceconsole.h" -#include "sourceinterface.h" -#include "concommand.h" -#include "printcommand.h" +#include "core/sourceinterface.h" +#include "core/convar/concommand.h" +#include "util/printcommands.h" SourceInterface<CGameConsole>* g_pSourceGameConsole; diff --git a/NorthstarDLL/sourceconsole.h b/NorthstarDLL/logging/sourceconsole.h index b22ef2d3..cf7027df 100644 --- a/NorthstarDLL/sourceconsole.h +++ b/NorthstarDLL/logging/sourceconsole.h @@ -1,6 +1,6 @@ #pragma once #include "pch.h" -#include "sourceinterface.h" +#include "core/sourceinterface.h" #include "spdlog/sinks/base_sink.h" #include <map> diff --git a/NorthstarDLL/masterserver.cpp b/NorthstarDLL/masterserver/masterserver.cpp index 2e1c5321..5679939b 100644 --- a/NorthstarDLL/masterserver.cpp +++ b/NorthstarDLL/masterserver/masterserver.cpp @@ -1,13 +1,13 @@ #include "pch.h" -#include "masterserver.h" -#include "concommand.h" +#include "masterserver/masterserver.h" +#include "core/convar/concommand.h" #include "playlist.h" -#include "serverauthentication.h" -#include "tier0.h" -#include "r2engine.h" -#include "modmanager.h" -#include "misccommands.h" -#include "version.h" +#include "server/auth/serverauthentication.h" +#include "core/tier0.h" +#include "engine/r2engine.h" +#include "mods/modmanager.h" +#include "shared/misccommands.h" +#include "util/version.h" #include "rapidjson/document.h" #include "rapidjson/stringbuffer.h" diff --git a/NorthstarDLL/masterserver.h b/NorthstarDLL/masterserver/masterserver.h index 4e649fae..bded9952 100644 --- a/NorthstarDLL/masterserver.h +++ b/NorthstarDLL/masterserver/masterserver.h @@ -1,7 +1,7 @@ #pragma once -#include "convar.h" -#include "serverpresence.h" +#include "core/convar/convar.h" +#include "server/serverpresence.h" #include <winsock2.h> #include <string> #include <cstring> diff --git a/NorthstarDLL/kb_act.cpp b/NorthstarDLL/mods/compiled/kb_act.cpp index 5fe71cdb..4a011dc7 100644 --- a/NorthstarDLL/kb_act.cpp +++ b/NorthstarDLL/mods/compiled/kb_act.cpp @@ -1,45 +1,45 @@ -#include "pch.h"
-#include "modmanager.h"
-#include "filesystem.h"
-
-#include <fstream>
-
-const char* KB_ACT_PATH = "scripts\\kb_act.lst";
-
-// compiles the file kb_act.lst, that defines entries for keybindings in the options menu
-void ModManager::BuildKBActionsList()
-{
- spdlog::info("Building kb_act.lst");
-
- fs::create_directories(GetCompiledAssetsPath() / "scripts");
- std::ofstream soCompiledKeys(GetCompiledAssetsPath() / KB_ACT_PATH, std::ios::binary);
-
- // write vanilla file's content to compiled file
- soCompiledKeys << R2::ReadVPKOriginalFile(KB_ACT_PATH);
-
- for (Mod& mod : m_LoadedMods)
- {
- if (!mod.m_bEnabled)
- continue;
-
- // write content of each modded file to compiled file
- std::ifstream siModKeys(mod.m_ModDirectory / "kb_act.lst");
-
- if (siModKeys.good())
- soCompiledKeys << siModKeys.rdbuf() << std::endl;
-
- siModKeys.close();
- }
-
- soCompiledKeys.close();
-
- // push to overrides
- ModOverrideFile overrideFile;
- overrideFile.m_pOwningMod = nullptr;
- overrideFile.m_Path = KB_ACT_PATH;
-
- if (m_ModFiles.find(KB_ACT_PATH) == m_ModFiles.end())
- m_ModFiles.insert(std::make_pair(KB_ACT_PATH, overrideFile));
- else
- m_ModFiles[KB_ACT_PATH] = overrideFile;
-}
+#include "pch.h" +#include "mods/modmanager.h" +#include "core/filesystem/filesystem.h" + +#include <fstream> + +const char* KB_ACT_PATH = "scripts\\kb_act.lst"; + +// compiles the file kb_act.lst, that defines entries for keybindings in the options menu +void ModManager::BuildKBActionsList() +{ + spdlog::info("Building kb_act.lst"); + + fs::create_directories(GetCompiledAssetsPath() / "scripts"); + std::ofstream soCompiledKeys(GetCompiledAssetsPath() / KB_ACT_PATH, std::ios::binary); + + // write vanilla file's content to compiled file + soCompiledKeys << R2::ReadVPKOriginalFile(KB_ACT_PATH); + + for (Mod& mod : m_LoadedMods) + { + if (!mod.m_bEnabled) + continue; + + // write content of each modded file to compiled file + std::ifstream siModKeys(mod.m_ModDirectory / "kb_act.lst"); + + if (siModKeys.good()) + soCompiledKeys << siModKeys.rdbuf() << std::endl; + + siModKeys.close(); + } + + soCompiledKeys.close(); + + // push to overrides + ModOverrideFile overrideFile; + overrideFile.m_pOwningMod = nullptr; + overrideFile.m_Path = KB_ACT_PATH; + + if (m_ModFiles.find(KB_ACT_PATH) == m_ModFiles.end()) + m_ModFiles.insert(std::make_pair(KB_ACT_PATH, overrideFile)); + else + m_ModFiles[KB_ACT_PATH] = overrideFile; +} diff --git a/NorthstarDLL/modkeyvalues.cpp b/NorthstarDLL/mods/compiled/modkeyvalues.cpp index 75188329..774be0eb 100644 --- a/NorthstarDLL/modkeyvalues.cpp +++ b/NorthstarDLL/mods/compiled/modkeyvalues.cpp @@ -1,6 +1,6 @@ #include "pch.h" -#include "modmanager.h" -#include "filesystem.h" +#include "mods/modmanager.h" +#include "core/filesystem/filesystem.h" #include <fstream> diff --git a/NorthstarDLL/modpdef.cpp b/NorthstarDLL/mods/compiled/modpdef.cpp index d33ba8a6..219c744b 100644 --- a/NorthstarDLL/modpdef.cpp +++ b/NorthstarDLL/mods/compiled/modpdef.cpp @@ -1,6 +1,6 @@ #include "pch.h" -#include "modmanager.h" -#include "filesystem.h" +#include "mods/modmanager.h" +#include "core/filesystem/filesystem.h" #include <map> #include <sstream> diff --git a/NorthstarDLL/modscriptsrson.cpp b/NorthstarDLL/mods/compiled/modscriptsrson.cpp index 3615dd80..15fcdd13 100644 --- a/NorthstarDLL/modscriptsrson.cpp +++ b/NorthstarDLL/mods/compiled/modscriptsrson.cpp @@ -1,7 +1,7 @@ #include "pch.h" -#include "modmanager.h" -#include "filesystem.h" -#include "squirrel.h" +#include "mods/modmanager.h" +#include "core/filesystem/filesystem.h" +#include "squirrel/squirrel.h" #include <fstream> diff --git a/NorthstarDLL/modmanager.cpp b/NorthstarDLL/mods/modmanager.cpp index d95bcbce..6310b7ec 100644 --- a/NorthstarDLL/modmanager.cpp +++ b/NorthstarDLL/mods/modmanager.cpp @@ -1,12 +1,12 @@ #include "pch.h" #include "modmanager.h" -#include "convar.h" -#include "concommand.h" -#include "audio.h" -#include "masterserver.h" -#include "filesystem.h" -#include "rpakfilesystem.h" -#include "nsprefix.h" +#include "core/convar/convar.h" +#include "core/convar/concommand.h" +#include "client/audio.h" +#include "masterserver/masterserver.h" +#include "core/filesystem/filesystem.h" +#include "core/filesystem/rpakfilesystem.h" +#include "config/profile.h" #include "rapidjson/error/en.h" #include "rapidjson/document.h" @@ -118,46 +118,59 @@ Mod::Mod(fs::path modDir, char* jsonBuf) { // parse cvar flags from string // example string: ARCHIVE_PLAYERPROFILE | GAMEDLL + convar->Flags |= ParseConVarFlagsString(convar->Name, convarObj["Flags"].GetString()); + } + } - std::string sFlags = convarObj["Flags"].GetString(); - sFlags += '|'; // add additional | so we register the last flag - std::string sCurrentFlag; + ConVars.push_back(convar); + } + } - for (int i = 0; i < sFlags.length(); i++) - { - if (isspace(sFlags[i])) - continue; + if (modJson.HasMember("ConCommands") && modJson["ConCommands"].IsArray()) + { + for (auto& concommandObj : modJson["ConCommands"].GetArray()) + { + if (!concommandObj.IsObject() || !concommandObj.HasMember("Name") || !concommandObj.HasMember("Function") || + !concommandObj.HasMember("Context")) + { + continue; + } - // if we encounter a |, add current string as a flag - if (sFlags[i] == '|') - { - bool bHasFlags = false; - int iCurrentFlags; + // have to allocate this manually, otherwise concommand registration will break + // unfortunately this causes us to leak memory on reload, unsure of a way around this rn + ModConCommand* concommand = new ModConCommand; + concommand->Name = concommandObj["Name"].GetString(); + concommand->Function = concommandObj["Function"].GetString(); + concommand->Context = ScriptContextFromString(concommandObj["Context"].GetString()); + if (concommand->Context == ScriptContext::INVALID) + { + spdlog::warn("Mod ConCommand {} has invalid context {}", concommand->Name, concommandObj["Context"].GetString()); + continue; + } - for (auto& flagPair : g_PrintCommandFlags) - { - if (!sCurrentFlag.compare(flagPair.second)) - { - iCurrentFlags = flagPair.first; - bHasFlags = true; - break; - } - } + if (concommandObj.HasMember("HelpString")) + concommand->HelpString = concommandObj["HelpString"].GetString(); + else + concommand->HelpString = ""; - if (bHasFlags) - convar->Flags |= iCurrentFlags; - else - spdlog::warn("Mod ConVar {} has unknown flag {}", convar->Name, sCurrentFlag); + concommand->Flags = FCVAR_NONE; - sCurrentFlag = ""; - } - else - sCurrentFlag += sFlags[i]; - } + if (concommandObj.HasMember("Flags")) + { + // read raw integer flags + if (concommandObj["Flags"].IsInt()) + { + concommand->Flags = concommandObj["Flags"].GetInt(); + } + else if (concommandObj["Flags"].IsString()) + { + // parse cvar flags from string + // example string: ARCHIVE_PLAYERPROFILE | GAMEDLL + concommand->Flags |= ParseConVarFlagsString(concommand->Name, concommandObj["Flags"].GetString()); } } - ConVars.push_back(convar); + ConCommands.push_back(concommand); } } @@ -267,6 +280,70 @@ ModManager::ModManager() LoadMods(); } +struct Test +{ + std::string funcName; + ScriptContext context; +}; + +template <ScriptContext context> auto ModConCommandCallback_Internal(std::string name, const CCommand& command) +{ + if (g_pSquirrel<context>->m_pSQVM && g_pSquirrel<context>->m_pSQVM) + { + std::vector<std::string> args; + args.reserve(command.ArgC()); + for (int i = 1; i < command.ArgC(); i++) + args.push_back(command.Arg(i)); + g_pSquirrel<context>->AsyncCall(name, args); + } + else + { + spdlog::warn("ConCommand `{}` was called while the associated Squirrel VM `{}` was unloaded", name, GetContextName(context)); + } +} + +auto ModConCommandCallback(const CCommand& command) +{ + ModConCommand* found = nullptr; + auto commandString = std::string(command.GetCommandString()); + + // Finding the first space to remove the command's name + auto firstSpace = commandString.find(' '); + if (firstSpace) + { + commandString = commandString.substr(0, firstSpace); + } + + // Find the mod this command belongs to + for (auto& mod : g_pModManager->m_LoadedMods) + { + auto res = std::find_if( + mod.ConCommands.begin(), + mod.ConCommands.end(), + [&commandString](const ModConCommand* other) { return other->Name == commandString; }); + if (res != mod.ConCommands.end()) + { + found = *res; + break; + } + } + if (!found) + return; + + switch (found->Context) + { + case ScriptContext::CLIENT: + ModConCommandCallback_Internal<ScriptContext::CLIENT>(found->Function, command); + break; + case ScriptContext::SERVER: + ModConCommandCallback_Internal<ScriptContext::SERVER>(found->Function, command); + break; + case ScriptContext::UI: + ModConCommandCallback_Internal<ScriptContext::UI>(found->Function, command); + break; + }; +} + void ModManager::LoadMods() { if (m_bHasLoadedMods) @@ -365,9 +442,25 @@ void ModManager::LoadMods() // preexisting convars note: we don't delete convars if they already exist because they're used for script stuff, unfortunately this // causes us to leak memory on reload, but not much, potentially find a way to not do this at some point for (ModConVar* convar : mod.ConVars) - if (!R2::g_pCVar->FindVar(convar->Name.c_str())) // make sure convar isn't registered yet, unsure if necessary but idk what - // behaviour is for defining same convar multiple times + { + // make sure convar isn't registered yet, unsure if necessary but idk what + // behaviour is for defining same convar multiple times + if (!R2::g_pCVar->FindVar(convar->Name.c_str())) + { new ConVar(convar->Name.c_str(), convar->DefaultValue.c_str(), convar->Flags, convar->HelpString.c_str()); + } + } + + for (ModConCommand* command : mod.ConCommands) + { + // make sure command isnt't registered multiple times. + if (!R2::g_pCVar->FindCommand(command->Name.c_str())) + { + ConCommand* newCommand = new ConCommand(); + std::string funcName = command->Function; + RegisterConCommand(command->Name.c_str(), ModConCommandCallback, command->HelpString.c_str(), command->Flags); + } + } // read vpk paths if (fs::exists(mod.m_ModDirectory / "vpk")) @@ -598,8 +691,9 @@ void ModManager::LoadMods() // build modinfo obj for masterserver rapidjson_document modinfoDoc; + auto& alloc = modinfoDoc.GetAllocator(); modinfoDoc.SetObject(); - modinfoDoc.AddMember("Mods", rapidjson_document::GenericValue(rapidjson::kArrayType), modinfoDoc.GetAllocator()); + modinfoDoc.AddMember("Mods", rapidjson::kArrayType, alloc); int currentModIndex = 0; for (Mod& mod : m_LoadedMods) @@ -607,7 +701,7 @@ void ModManager::LoadMods() if (!mod.m_bEnabled || (!mod.RequiredOnClient && !mod.Pdiff.size())) continue; - modinfoDoc["Mods"].PushBack(rapidjson_document::GenericValue(rapidjson::kObjectType), modinfoDoc.GetAllocator()); + modinfoDoc["Mods"].PushBack(rapidjson::kObjectType, modinfoDoc.GetAllocator()); modinfoDoc["Mods"][currentModIndex].AddMember("Name", rapidjson::StringRef(&mod.Name[0]), modinfoDoc.GetAllocator()); modinfoDoc["Mods"][currentModIndex].AddMember("Version", rapidjson::StringRef(&mod.Version[0]), modinfoDoc.GetAllocator()); modinfoDoc["Mods"][currentModIndex].AddMember("RequiredOnClient", mod.RequiredOnClient, modinfoDoc.GetAllocator()); @@ -649,10 +743,7 @@ void ModManager::UnloadMods() // main issue with doing this here is when we reload mods for connecting to a server, we write enabled mods, which isn't necessarily // what we wanna do if (!m_EnabledModsCfg.HasMember(mod.Name.c_str())) - m_EnabledModsCfg.AddMember( - rapidjson_document::StringRefType(mod.Name.c_str()), - rapidjson_document::GenericValue(false), - m_EnabledModsCfg.GetAllocator()); + m_EnabledModsCfg.AddMember(rapidjson_document::StringRefType(mod.Name.c_str()), false, m_EnabledModsCfg.GetAllocator()); m_EnabledModsCfg[mod.Name.c_str()].SetBool(mod.m_bEnabled); } diff --git a/NorthstarDLL/modmanager.h b/NorthstarDLL/mods/modmanager.h index 6540a3de..ded6ff06 100644 --- a/NorthstarDLL/modmanager.h +++ b/NorthstarDLL/mods/modmanager.h @@ -1,7 +1,7 @@ #pragma once -#include "convar.h" -#include "memalloc.h" -#include "squirrel.h" +#include "core/convar/convar.h" +#include "core/memalloc.h" +#include "squirrel/squirrel.h" #include "rapidjson/document.h" #include <string> @@ -22,6 +22,16 @@ struct ModConVar int Flags; }; +struct ModConCommand +{ + public: + std::string Name; + std::string Function; + std::string HelpString; + ScriptContext Context; + int Flags; +}; + struct ModScriptCallback { public: @@ -87,6 +97,8 @@ class Mod std::vector<ModScript> Scripts; // convars created by the mod std::vector<ModConVar*> ConVars; + // concommands created by the mod + std::vector<ModConCommand*> ConCommands; // custom localisation files created by the mod std::vector<std::string> LocalisationFiles; diff --git a/NorthstarDLL/pch.h b/NorthstarDLL/pch.h index 824aaee8..55ebba8b 100644 --- a/NorthstarDLL/pch.h +++ b/NorthstarDLL/pch.h @@ -9,7 +9,7 @@ #define RAPIDJSON_HAS_STDSTRING 1 // add headers that you want to pre-compile here -#include "memalloc.h" +#include "core/memalloc.h" #include <windows.h> #include <psapi.h> @@ -20,32 +20,19 @@ namespace fs = std::filesystem; -#include "structs.h" -#include "color.h" +// clang-format off +#define assert_msg(exp, msg) assert((exp, msg)) +//clang-format on + +#include "core/macros.h" + +#include "core/structs.h" +#include "core/math/color.h" #include "spdlog/spdlog.h" -#include "logging.h" +#include "logging/logging.h" #include "MinHook.h" #include "libcurl/include/curl/curl.h" -#include "hooks.h" -#include "memory.h" - -template <typename ReturnType, typename... Args> ReturnType CallVFunc(int index, void* thisPtr, Args... args) -{ - return (*reinterpret_cast<ReturnType(__fastcall***)(void*, Args...)>(thisPtr))[index](thisPtr, args...); -} - -template <typename T, size_t index, typename... Args> constexpr T CallVFunc_Alt(void* classBase, Args... args) noexcept -{ - return ((*(T(__thiscall***)(void*, Args...))(classBase))[index])(classBase, args...); -} - -#define STR_HASH(s) (std::hash<std::string>()(s)) - -// Example usage: M_VMETHOD(int, GetEntityIndex, 8, (CBaseEntity* ent), (this, ent)) -#define M_VMETHOD(returnType, name, index, args, argsRaw) \ - FORCEINLINE returnType name args noexcept \ - { \ - return CallVFunc_Alt<returnType, index> argsRaw; \ - } +#include "core/hooks.h" +#include "core/memory.h" #endif diff --git a/NorthstarDLL/plugin_abi.h b/NorthstarDLL/plugins/plugin_abi.h index 4b176a32..4b176a32 100644 --- a/NorthstarDLL/plugin_abi.h +++ b/NorthstarDLL/plugins/plugin_abi.h diff --git a/NorthstarDLL/plugins.cpp b/NorthstarDLL/plugins/plugins.cpp index 790439d1..97ac0b9f 100644 --- a/NorthstarDLL/plugins.cpp +++ b/NorthstarDLL/plugins/plugins.cpp @@ -1,9 +1,9 @@ #include "pch.h" -#include "squirrel.h" +#include "squirrel/squirrel.h" #include "plugins.h" -#include "masterserver.h" -#include "convar.h" -#include "serverpresence.h" +#include "masterserver/masterserver.h" +#include "core/convar/convar.h" +#include "server/serverpresence.h" #include <chrono> #include <windows.h> diff --git a/NorthstarDLL/plugins.h b/NorthstarDLL/plugins/plugins.h index 953801a2..953801a2 100644 --- a/NorthstarDLL/plugins.h +++ b/NorthstarDLL/plugins/plugins.h diff --git a/NorthstarDLL/clientchathooks.cpp b/NorthstarDLL/scripts/client/clientchathooks.cpp index 847b5eb1..0fc68302 100644 --- a/NorthstarDLL/clientchathooks.cpp +++ b/NorthstarDLL/scripts/client/clientchathooks.cpp @@ -1,8 +1,8 @@ #include "pch.h" -#include "squirrel.h" +#include "squirrel/squirrel.h" -#include "serverchathooks.h" -#include "localchatwriter.h" +#include "server/serverchathooks.h" +#include "client/localchatwriter.h" #include <rapidjson/document.h> diff --git a/NorthstarDLL/scriptbrowserhooks.cpp b/NorthstarDLL/scripts/client/scriptbrowserhooks.cpp index df4014de..df4014de 100644 --- a/NorthstarDLL/scriptbrowserhooks.cpp +++ b/NorthstarDLL/scripts/client/scriptbrowserhooks.cpp diff --git a/NorthstarDLL/scriptmainmenupromos.cpp b/NorthstarDLL/scripts/client/scriptmainmenupromos.cpp index 5f7a09c1..0ea167f8 100644 --- a/NorthstarDLL/scriptmainmenupromos.cpp +++ b/NorthstarDLL/scripts/client/scriptmainmenupromos.cpp @@ -1,6 +1,6 @@ #include "pch.h" -#include "squirrel.h" -#include "masterserver.h" +#include "squirrel/squirrel.h" +#include "masterserver/masterserver.h" // mirror this in script enum eMainMenuPromoDataProperty @@ -121,4 +121,4 @@ ADD_SQFUNC("var", NSGetCustomMainMenuPromoData, "int promoDataKey", "", ScriptCo } return SQRESULT_NOTNULL; -}
\ No newline at end of file +} diff --git a/NorthstarDLL/scriptmodmenu.cpp b/NorthstarDLL/scripts/client/scriptmodmenu.cpp index df5dc101..75d05acc 100644 --- a/NorthstarDLL/scriptmodmenu.cpp +++ b/NorthstarDLL/scripts/client/scriptmodmenu.cpp @@ -1,8 +1,8 @@ #include "pch.h" -#include "modmanager.h" -#include "squirrel.h" +#include "mods/modmanager.h" +#include "squirrel/squirrel.h" -ADD_SQFUNC("array<string>", NSGetModNames, "", "", ScriptContext::UI) +ADD_SQFUNC("array<string>", NSGetModNames, "", "", ScriptContext::SERVER | ScriptContext::CLIENT | ScriptContext::UI) { g_pSquirrel<context>->newarray(sqvm, 0); @@ -15,7 +15,7 @@ ADD_SQFUNC("array<string>", NSGetModNames, "", "", ScriptContext::UI) return SQRESULT_NOTNULL; } -ADD_SQFUNC("bool", NSIsModEnabled, "string modName", "", ScriptContext::UI) +ADD_SQFUNC("bool", NSIsModEnabled, "string modName", "", ScriptContext::SERVER | ScriptContext::CLIENT | ScriptContext::UI) { const SQChar* modName = g_pSquirrel<context>->getstring(sqvm, 1); @@ -32,7 +32,7 @@ ADD_SQFUNC("bool", NSIsModEnabled, "string modName", "", ScriptContext::UI) return SQRESULT_NULL; } -ADD_SQFUNC("void", NSSetModEnabled, "string modName, bool enabled", "", ScriptContext::UI) +ADD_SQFUNC("void", NSSetModEnabled, "string modName, bool enabled", "", ScriptContext::SERVER | ScriptContext::CLIENT | ScriptContext::UI) { const SQChar* modName = g_pSquirrel<context>->getstring(sqvm, 1); const SQBool enabled = g_pSquirrel<context>->getbool(sqvm, 2); @@ -50,7 +50,7 @@ ADD_SQFUNC("void", NSSetModEnabled, "string modName, bool enabled", "", ScriptCo return SQRESULT_NULL; } -ADD_SQFUNC("string", NSGetModDescriptionByModName, "string modName", "", ScriptContext::UI) +ADD_SQFUNC("string", NSGetModDescriptionByModName, "string modName", "", ScriptContext::SERVER | ScriptContext::CLIENT | ScriptContext::UI) { const SQChar* modName = g_pSquirrel<context>->getstring(sqvm, 1); @@ -67,7 +67,7 @@ ADD_SQFUNC("string", NSGetModDescriptionByModName, "string modName", "", ScriptC return SQRESULT_NULL; } -ADD_SQFUNC("string", NSGetModVersionByModName, "string modName", "", ScriptContext::UI) +ADD_SQFUNC("string", NSGetModVersionByModName, "string modName", "", ScriptContext::SERVER | ScriptContext::CLIENT | ScriptContext::UI) { const SQChar* modName = g_pSquirrel<context>->getstring(sqvm, 1); @@ -84,7 +84,7 @@ ADD_SQFUNC("string", NSGetModVersionByModName, "string modName", "", ScriptConte return SQRESULT_NULL; } -ADD_SQFUNC("string", NSGetModDownloadLinkByModName, "string modName", "", ScriptContext::UI) +ADD_SQFUNC("string", NSGetModDownloadLinkByModName, "string modName", "", ScriptContext::SERVER | ScriptContext::CLIENT | ScriptContext::UI) { const SQChar* modName = g_pSquirrel<context>->getstring(sqvm, 1); @@ -101,7 +101,7 @@ ADD_SQFUNC("string", NSGetModDownloadLinkByModName, "string modName", "", Script return SQRESULT_NULL; } -ADD_SQFUNC("int", NSGetModLoadPriority, "string modName", "", ScriptContext::UI) +ADD_SQFUNC("int", NSGetModLoadPriority, "string modName", "", ScriptContext::SERVER | ScriptContext::CLIENT | ScriptContext::UI) { const SQChar* modName = g_pSquirrel<context>->getstring(sqvm, 1); @@ -118,7 +118,7 @@ ADD_SQFUNC("int", NSGetModLoadPriority, "string modName", "", ScriptContext::UI) return SQRESULT_NULL; } -ADD_SQFUNC("bool", NSIsModRequiredOnClient, "string modName", "", ScriptContext::UI) +ADD_SQFUNC("bool", NSIsModRequiredOnClient, "string modName", "", ScriptContext::SERVER | ScriptContext::CLIENT | ScriptContext::UI) { const SQChar* modName = g_pSquirrel<context>->getstring(sqvm, 1); @@ -135,7 +135,8 @@ ADD_SQFUNC("bool", NSIsModRequiredOnClient, "string modName", "", ScriptContext: return SQRESULT_NULL; } -ADD_SQFUNC("array<string>", NSGetModConvarsByModName, "string modName", "", ScriptContext::UI) +ADD_SQFUNC( + "array<string>", NSGetModConvarsByModName, "string modName", "", ScriptContext::SERVER | ScriptContext::CLIENT | ScriptContext::UI) { const SQChar* modName = g_pSquirrel<context>->getstring(sqvm, 1); g_pSquirrel<context>->newarray(sqvm, 0); diff --git a/NorthstarDLL/scriptserverbrowser.cpp b/NorthstarDLL/scripts/client/scriptserverbrowser.cpp index 05f83269..5f1287ad 100644 --- a/NorthstarDLL/scriptserverbrowser.cpp +++ b/NorthstarDLL/scripts/client/scriptserverbrowser.cpp @@ -1,9 +1,9 @@ #include "pch.h" -#include "squirrel.h" -#include "masterserver.h" -#include "serverauthentication.h" -#include "r2engine.h" -#include "r2client.h" +#include "squirrel/squirrel.h" +#include "masterserver/masterserver.h" +#include "server/auth/serverauthentication.h" +#include "engine/r2engine.h" +#include "client/r2client.h" // functions for viewing server browser diff --git a/NorthstarDLL/scriptservertoclientstringcommand.cpp b/NorthstarDLL/scripts/client/scriptservertoclientstringcommand.cpp index ac19c3af..f3cb2f18 100644 --- a/NorthstarDLL/scriptservertoclientstringcommand.cpp +++ b/NorthstarDLL/scripts/client/scriptservertoclientstringcommand.cpp @@ -1,7 +1,7 @@ #include "pch.h" -#include "squirrel.h" -#include "convar.h" -#include "concommand.h" +#include "squirrel/squirrel.h" +#include "core/convar/convar.h" +#include "core/convar/concommand.h" void ConCommand_ns_script_servertoclientstringcommand(const CCommand& arg) { diff --git a/NorthstarDLL/scriptdatatables.cpp b/NorthstarDLL/scripts/scriptdatatables.cpp index dfa45737..915d4df0 100644 --- a/NorthstarDLL/scriptdatatables.cpp +++ b/NorthstarDLL/scripts/scriptdatatables.cpp @@ -1,12 +1,12 @@ #include "pch.h" -#include "squirrel.h" -#include "rpakfilesystem.h" -#include "convar.h" -#include "dedicated.h" -#include "filesystem.h" -#include "vector.h" -#include "tier0.h" -#include "r2engine.h" +#include "squirrel/squirrel.h" +#include "core/filesystem/rpakfilesystem.h" +#include "core/convar/convar.h" +#include "dedicated/dedicated.h" +#include "core/filesystem/filesystem.h" +#include "core/math/vector.h" +#include "core/tier0.h" +#include "engine/r2engine.h" #include <iostream> #include <sstream> #include <map> diff --git a/NorthstarDLL/scripts/scripthttprequesthandler.cpp b/NorthstarDLL/scripts/scripthttprequesthandler.cpp new file mode 100644 index 00000000..17ccc888 --- /dev/null +++ b/NorthstarDLL/scripts/scripthttprequesthandler.cpp @@ -0,0 +1,586 @@ +#include "pch.h" +#include "scripthttprequesthandler.h" +#include "util/version.h" +#include "squirrel/squirrel.h" +#include "core/tier0.h" + +HttpRequestHandler* g_httpRequestHandler; + +bool IsHttpDisabled() +{ + const static bool bIsHttpDisabled = Tier0::CommandLine()->FindParm("-disablehttprequests"); + return bIsHttpDisabled; +} + +bool IsLocalHttpAllowed() +{ + const static bool bIsLocalHttpAllowed = Tier0::CommandLine()->FindParm("-allowlocalhttp"); + return bIsLocalHttpAllowed; +} + +bool DisableHttpSsl() +{ + const static bool bDisableHttpSsl = Tier0::CommandLine()->FindParm("-disablehttpssl"); + return bDisableHttpSsl; +} + +HttpRequestHandler::HttpRequestHandler() +{ + // Cache the launch parameters as early as possible in order to avoid possible exploits that change them at runtime. + IsHttpDisabled(); + IsLocalHttpAllowed(); + DisableHttpSsl(); +} + +void HttpRequestHandler::StartHttpRequestHandler() +{ + if (IsRunning()) + { + spdlog::warn("%s was called while IsRunning() is true!", __FUNCTION__); + return; + } + + m_bIsHttpRequestHandlerRunning = true; + spdlog::info("HttpRequestHandler started."); +} + +void HttpRequestHandler::StopHttpRequestHandler() +{ + if (!IsRunning()) + { + spdlog::warn("%s was called while IsRunning() is false", __FUNCTION__); + return; + } + + m_bIsHttpRequestHandlerRunning = false; + spdlog::info("HttpRequestHandler stopped."); +} + +bool IsHttpDestinationHostAllowed(const std::string& host, std::string& outHostname, std::string& outAddress, std::string& outPort) +{ + CURLU* url = curl_url(); + if (!url) + { + spdlog::error("Failed to call curl_url() for http request."); + return false; + } + + if (curl_url_set(url, CURLUPART_URL, host.c_str(), CURLU_DEFAULT_SCHEME) != CURLUE_OK) + { + spdlog::error("Failed to parse destination URL for http request."); + + curl_url_cleanup(url); + return false; + } + + char* urlHostname = nullptr; + if (curl_url_get(url, CURLUPART_HOST, &urlHostname, 0) != CURLUE_OK) + { + spdlog::error("Failed to parse hostname from destination URL for http request."); + + curl_url_cleanup(url); + return false; + } + + char* urlScheme = nullptr; + if (curl_url_get(url, CURLUPART_SCHEME, &urlScheme, CURLU_DEFAULT_SCHEME) != CURLUE_OK) + { + spdlog::error("Failed to parse scheme from destination URL for http request."); + + curl_url_cleanup(url); + curl_free(urlHostname); + return false; + } + + char* urlPort = nullptr; + if (curl_url_get(url, CURLUPART_PORT, &urlPort, CURLU_DEFAULT_PORT) != CURLUE_OK) + { + spdlog::error("Failed to parse port from destination URL for http request."); + + curl_url_cleanup(url); + curl_free(urlHostname); + curl_free(urlScheme); + return false; + } + + // Resolve the hostname into an address. + addrinfo* result; + addrinfo hints; + std::memset(&hints, 0, sizeof(addrinfo)); + hints.ai_family = AF_UNSPEC; + + if (getaddrinfo(urlHostname, urlScheme, &hints, &result) != 0) + { + spdlog::error("Failed to resolve http request destination {} using getaddrinfo().", urlHostname); + + curl_url_cleanup(url); + curl_free(urlHostname); + curl_free(urlScheme); + curl_free(urlPort); + return false; + } + + bool bFoundIPv6 = false; + sockaddr_in* sockaddr_ipv4 = nullptr; + for (addrinfo* info = result; info; info = info->ai_next) + { + if (info->ai_family == AF_INET) + { + sockaddr_ipv4 = (sockaddr_in*)info->ai_addr; + break; + } + + bFoundIPv6 = bFoundIPv6 || info->ai_family == AF_INET6; + } + + if (sockaddr_ipv4 == nullptr) + { + if (bFoundIPv6) + { + spdlog::error("Only IPv4 destinations are supported for HTTP requests. To allow IPv6, launch the game using -allowlocalhttp."); + } + else + { + spdlog::error("Failed to resolve http request destination {} into a valid IPv4 address.", urlHostname); + } + + curl_free(urlHostname); + curl_free(urlScheme); + curl_free(urlPort); + curl_url_cleanup(url); + + return false; + } + + // Fast checks for private ranges of IPv4. + // clang-format off + { + auto addrBytes = sockaddr_ipv4->sin_addr.S_un.S_un_b; + + if (addrBytes.s_b1 == 10 // 10.0.0.0 - 10.255.255.255 (Class A Private) + || addrBytes.s_b1 == 172 && addrBytes.s_b2 >= 16 && addrBytes.s_b2 <= 31 // 172.16.0.0 - 172.31.255.255 (Class B Private) + || addrBytes.s_b1 == 192 && addrBytes.s_b2 == 168 // 192.168.0.0 - 192.168.255.255 (Class C Private) + || addrBytes.s_b1 == 192 && addrBytes.s_b2 == 0 && addrBytes.s_b3 == 0 // 192.0.0.0 - 192.0.0.255 (IETF Assignment) + || addrBytes.s_b1 == 192 && addrBytes.s_b2 == 0 && addrBytes.s_b3 == 2 // 192.0.2.0 - 192.0.2.255 (TEST-NET-1) + || addrBytes.s_b1 == 192 && addrBytes.s_b2 == 88 && addrBytes.s_b3 == 99 // 192.88.99.0 - 192.88.99.255 (IPv4-IPv6 Relay) + || addrBytes.s_b1 == 192 && addrBytes.s_b2 >= 18 && addrBytes.s_b2 <= 19 // 192.18.0.0 - 192.19.255.255 (Internet Benchmark) + || addrBytes.s_b1 == 192 && addrBytes.s_b2 == 51 && addrBytes.s_b3 == 100 // 192.51.100.0 - 192.51.100.255 (TEST-NET-2) + || addrBytes.s_b1 == 203 && addrBytes.s_b2 == 0 && addrBytes.s_b3 == 113 // 203.0.113.0 - 203.0.113.255 (TEST-NET-3) + || addrBytes.s_b1 == 169 && addrBytes.s_b2 == 254 // 169.254.00 - 169.254.255.255 (Link-local/APIPA) + || addrBytes.s_b1 == 127 // 127.0.0.0 - 127.255.255.255 (Loopback) + || addrBytes.s_b1 == 0 // 0.0.0.0 - 0.255.255.255 (Current network) + || addrBytes.s_b1 == 100 && addrBytes.s_b2 >= 64 && addrBytes.s_b2 <= 127 // 100.64.0.0 - 100.127.255.255 (Shared address space) + || sockaddr_ipv4->sin_addr.S_un.S_addr == 0xFFFFFFFF // 255.255.255.255 (Broadcast) + || addrBytes.s_b1 >= 224 && addrBytes.s_b2 <= 239 // 224.0.0.0 - 239.255.255.255 (Multicast) + || addrBytes.s_b1 == 233 && addrBytes.s_b2 == 252 && addrBytes.s_b3 == 0 // 233.252.0.0 - 233.252.0.255 (MCAST-TEST-NET) + || addrBytes.s_b1 >= 240 && addrBytes.s_b4 <= 254) // 240.0.0.0 - 255.255.255.254 (Future Use Class E) + { + curl_free(urlHostname); + curl_free(urlScheme); + curl_free(urlPort); + curl_url_cleanup(url); + + return false; + } + } + + // clang-format on + + char resolvedStr[INET_ADDRSTRLEN]; + inet_ntop(AF_INET, &sockaddr_ipv4->sin_addr, resolvedStr, INET_ADDRSTRLEN); + + // Use the resolved address as the new request host. + outHostname = urlHostname; + outAddress = resolvedStr; + outPort = urlPort; + + freeaddrinfo(result); + + curl_free(urlHostname); + curl_free(urlScheme); + curl_free(urlPort); + curl_url_cleanup(url); + + return true; +} + +size_t HttpCurlWriteToStringBufferCallback(char* contents, size_t size, size_t nmemb, void* userp) +{ + ((std::string*)userp)->append((char*)contents, size * nmemb); + return size * nmemb; +} + +template <ScriptContext context> int HttpRequestHandler::MakeHttpRequest(const HttpRequest& requestParameters) +{ + if (!IsRunning()) + { + spdlog::warn("%s was called while IsRunning() is false!", __FUNCTION__); + return -1; + } + + if (IsHttpDisabled()) + { + spdlog::warn("NS_InternalMakeHttpRequest called while the game is running with -disablehttprequests." + " Please check if requests are allowed using NSIsHttpEnabled() first."); + return -1; + } + + bool bAllowLocalHttp = IsLocalHttpAllowed(); + + // This handle will be returned to Squirrel so it can wait for the response and assign a callback for it. + int handle = ++m_iLastRequestHandle; + + std::thread requestThread( + [this, handle, requestParameters, bAllowLocalHttp]() + { + std::string hostname, resolvedAddress, resolvedPort; + + if (!bAllowLocalHttp) + { + if (!IsHttpDestinationHostAllowed(requestParameters.baseUrl, hostname, resolvedAddress, resolvedPort)) + { + spdlog::warn( + "HttpRequestHandler::MakeHttpRequest attempted to make a request to a private network. This is only allowed when " + "running the game with -allowlocalhttp."); + g_pSquirrel<context>->AsyncCall( + "NSHandleFailedHttpRequest", + handle, + (int)0, + "Cannot make HTTP requests to private network hosts without -allowlocalhttp. Check your console for more " + "information."); + return; + } + } + + CURL* curl = curl_easy_init(); + if (!curl) + { + spdlog::error("HttpRequestHandler::MakeHttpRequest failed to init libcurl for request."); + g_pSquirrel<context>->AsyncCall( + "NSHandleFailedHttpRequest", handle, static_cast<int>(CURLE_FAILED_INIT), curl_easy_strerror(CURLE_FAILED_INIT)); + return; + } + + // HEAD has no body. + if (requestParameters.method == HttpRequestMethod::HRM_HEAD) + { + curl_easy_setopt(curl, CURLOPT_NOBODY, 1L); + } + + curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, HttpRequestMethod::ToString(requestParameters.method).c_str()); + + // Only resolve to IPv4 if we don't allow private network requests. + curl_slist* host = nullptr; + if (!bAllowLocalHttp) + { + curl_easy_setopt(curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4); + host = curl_slist_append(host, fmt::format("{}:{}:{}", hostname, resolvedPort, resolvedAddress).c_str()); + curl_easy_setopt(curl, CURLOPT_RESOLVE, host); + } + + // Ensure we only allow HTTP or HTTPS. + curl_easy_setopt(curl, CURLOPT_PROTOCOLS, CURLPROTO_HTTP | CURLPROTO_HTTPS); + + // Allow redirects + curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L); + curl_easy_setopt(curl, CURLOPT_MAXREDIRS, 3L); + + // Check if the url already contains a query. + // If so, we'll know to append with & instead of start with ? + std::string queryUrl = requestParameters.baseUrl; + bool bUrlContainsQuery = false; + + // If this fails, just ignore the parsing and trust what the user wants to query. + // Probably will fail but handling it here would be annoying. + CURLU* curlUrl = curl_url(); + if (curlUrl) + { + if (curl_url_set(curlUrl, CURLUPART_URL, queryUrl.c_str(), CURLU_DEFAULT_SCHEME) == CURLUE_OK) + { + char* currentQuery; + if (curl_url_get(curlUrl, CURLUPART_QUERY, ¤tQuery, 0) == CURLUE_OK) + { + if (currentQuery && std::strlen(currentQuery) != 0) + { + bUrlContainsQuery = true; + } + } + + curl_free(currentQuery); + } + + curl_url_cleanup(curlUrl); + } + + // GET requests, or POST-like requests with an empty body, can have query parameters. + // Append them to the base url. + if (HttpRequestMethod::CanHaveQueryParameters(requestParameters.method) && + !HttpRequestMethod::UsesCurlPostOptions(requestParameters.method) || + requestParameters.body.empty()) + { + bool isFirstValue = true; + for (const auto& kv : requestParameters.queryParameters) + { + char* key = curl_easy_escape(curl, kv.first.c_str(), kv.first.length()); + + for (const std::string& queryValue : kv.second) + { + char* value = curl_easy_escape(curl, queryValue.c_str(), queryValue.length()); + + if (isFirstValue && !bUrlContainsQuery) + { + queryUrl.append(fmt::format("?{}={}", key, value)); + isFirstValue = false; + } + else + { + queryUrl.append(fmt::format("&{}={}", key, value)); + } + + curl_free(value); + } + + curl_free(key); + } + } + + // If this method uses POST-like curl options, set those and set the body. + // The body won't be sent if it's empty anyway, meaning the query parameters above, if any, would be. + if (HttpRequestMethod::UsesCurlPostOptions(requestParameters.method)) + { + // Grab the body and set it as a POST field + curl_easy_setopt(curl, CURLOPT_POST, 1L); + + curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, requestParameters.body.length()); + curl_easy_setopt(curl, CURLOPT_COPYPOSTFIELDS, requestParameters.body.c_str()); + } + + // Set the full URL for this http request. + curl_easy_setopt(curl, CURLOPT_URL, queryUrl.c_str()); + + std::string bodyBuffer; + std::string headerBuffer; + + // Set up buffers to write the response headers and body. + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, HttpCurlWriteToStringBufferCallback); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, &bodyBuffer); + curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION, HttpCurlWriteToStringBufferCallback); + curl_easy_setopt(curl, CURLOPT_HEADERDATA, &headerBuffer); + + // Add all the headers for the request. + curl_slist* headers = nullptr; + + // Content-Type header for POST-like requests. + if (HttpRequestMethod::UsesCurlPostOptions(requestParameters.method) && !requestParameters.body.empty()) + { + headers = curl_slist_append(headers, fmt::format("Content-Type: {}", requestParameters.contentType).c_str()); + } + + for (const auto& kv : requestParameters.headers) + { + for (const std::string& headerValue : kv.second) + { + headers = curl_slist_append(headers, fmt::format("{}: {}", kv.first, headerValue).c_str()); + } + } + + if (headers != nullptr) + { + curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers); + } + + // Disable SSL checks if requested by the user. + if (DisableHttpSsl()) + { + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYSTATUS, 0L); + } + + // Enforce the Northstar user agent, unless an override was specified. + if (requestParameters.userAgent.empty()) + { + curl_easy_setopt(curl, CURLOPT_USERAGENT, &NSUserAgent); + } + else + { + curl_easy_setopt(curl, CURLOPT_USERAGENT, requestParameters.userAgent.c_str()); + } + + // Set the timeout for this request. Max 60 seconds so mods can't just spin up native threads all the time. + curl_easy_setopt(curl, CURLOPT_TIMEOUT, std::clamp<long>(requestParameters.timeout, 1, 60)); + + CURLcode result = curl_easy_perform(curl); + if (IsRunning()) + { + if (result == CURLE_OK) + { + // While the curl request is OK, it could return a non success code. + // Squirrel side will handle firing the correct callback. + long httpCode = 0; + curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &httpCode); + g_pSquirrel<context>->AsyncCall( + "NSHandleSuccessfulHttpRequest", handle, static_cast<int>(httpCode), bodyBuffer, headerBuffer); + } + else + { + // Pass CURL result code & error. + spdlog::error( + "curl_easy_perform() failed with code {}, error: {}", static_cast<int>(result), curl_easy_strerror(result)); + + // If it's an SSL issue, tell the user they may disable SSL checks using -disablehttpssl. + if (result == CURLE_PEER_FAILED_VERIFICATION || result == CURLE_SSL_CERTPROBLEM || + result == CURLE_SSL_INVALIDCERTSTATUS) + { + spdlog::error("You can try disabling SSL verifications for this issue using the -disablehttpssl launch argument. " + "Keep in mind this is potentially dangerous!"); + } + + g_pSquirrel<context>->AsyncCall( + "NSHandleFailedHttpRequest", handle, static_cast<int>(result), curl_easy_strerror(result)); + } + } + + curl_easy_cleanup(curl); + curl_slist_free_all(headers); + curl_slist_free_all(host); + }); + + requestThread.detach(); + return handle; +} + +template <ScriptContext context> void HttpRequestHandler::RegisterSQFuncs() +{ + g_pSquirrel<context>->AddFuncRegistration( + "int", + "NS_InternalMakeHttpRequest", + "int method, string baseUrl, table<string, array<string> > headers, table<string, array<string> > queryParams, string contentType, " + "string body, " + "int timeout, string userAgent", + "[Internal use only] Passes the HttpRequest struct fields to be reconstructed in native and used for an http request", + SQ_InternalMakeHttpRequest<context>); + + g_pSquirrel<context>->AddFuncRegistration( + "bool", + "NSIsHttpEnabled", + "", + "Whether or not HTTP requests are enabled. You can opt-out by starting the game with -disablehttprequests.", + SQ_IsHttpEnabled<context>); + + g_pSquirrel<context>->AddFuncRegistration( + "bool", + "NSIsLocalHttpAllowed", + "", + "Whether or not HTTP requests can be made to a private network address. You can enable this by starting the game with " + "-allowlocalhttp.", + SQ_IsLocalHttpAllowed<context>); +} + +// int NS_InternalMakeHttpRequest(int method, string baseUrl, table<string, string> headers, table<string, string> queryParams, +// string contentType, string body, int timeout, string userAgent) +template <ScriptContext context> SQRESULT SQ_InternalMakeHttpRequest(HSquirrelVM* sqvm) +{ + if (!g_httpRequestHandler || !g_httpRequestHandler->IsRunning()) + { + spdlog::warn("NS_InternalMakeHttpRequest called while the http request handler isn't running."); + g_pSquirrel<context>->pushinteger(sqvm, -1); + return SQRESULT_NOTNULL; + } + + if (IsHttpDisabled()) + { + spdlog::warn("NS_InternalMakeHttpRequest called while the game is running with -disablehttprequests." + " Please check if requests are allowed using NSIsHttpEnabled() first."); + g_pSquirrel<context>->pushinteger(sqvm, -1); + return SQRESULT_NOTNULL; + } + + HttpRequest request; + request.method = static_cast<HttpRequestMethod::Type>(g_pSquirrel<context>->getinteger(sqvm, 1)); + request.baseUrl = g_pSquirrel<context>->getstring(sqvm, 2); + + // Read the tables for headers and query parameters. + SQTable* headerTable = sqvm->_stackOfCurrentFunction[3]._VAL.asTable; + for (int idx = 0; idx < headerTable->_numOfNodes; ++idx) + { + tableNode* node = &headerTable->_nodes[idx]; + + if (node->key._Type == OT_STRING && node->val._Type == OT_ARRAY) + { + SQArray* valueArray = node->val._VAL.asArray; + std::vector<std::string> headerValues; + + for (int vIdx = 0; vIdx < valueArray->_usedSlots; ++vIdx) + { + if (valueArray->_values[vIdx]._Type == OT_STRING) + { + headerValues.push_back(valueArray->_values[vIdx]._VAL.asString->_val); + } + } + + request.headers[node->key._VAL.asString->_val] = headerValues; + } + } + + SQTable* queryTable = sqvm->_stackOfCurrentFunction[4]._VAL.asTable; + for (int idx = 0; idx < queryTable->_numOfNodes; ++idx) + { + tableNode* node = &queryTable->_nodes[idx]; + + if (node->key._Type == OT_STRING && node->val._Type == OT_ARRAY) + { + SQArray* valueArray = node->val._VAL.asArray; + std::vector<std::string> queryValues; + + for (int vIdx = 0; vIdx < valueArray->_usedSlots; ++vIdx) + { + if (valueArray->_values[vIdx]._Type == OT_STRING) + { + queryValues.push_back(valueArray->_values[vIdx]._VAL.asString->_val); + } + } + + request.queryParameters[node->key._VAL.asString->_val] = queryValues; + } + } + + request.contentType = g_pSquirrel<context>->getstring(sqvm, 5); + request.body = g_pSquirrel<context>->getstring(sqvm, 6); + request.timeout = g_pSquirrel<context>->getinteger(sqvm, 7); + request.userAgent = g_pSquirrel<context>->getstring(sqvm, 8); + + int handle = g_httpRequestHandler->MakeHttpRequest<context>(request); + g_pSquirrel<context>->pushinteger(sqvm, handle); + return SQRESULT_NOTNULL; +} + +// bool NSIsHttpEnabled() +template <ScriptContext context> SQRESULT SQ_IsHttpEnabled(HSquirrelVM* sqvm) +{ + g_pSquirrel<context>->pushbool(sqvm, !IsHttpDisabled()); + return SQRESULT_NOTNULL; +} + +// bool NSIsLocalHttpAllowed() +template <ScriptContext context> SQRESULT SQ_IsLocalHttpAllowed(HSquirrelVM* sqvm) +{ + g_pSquirrel<context>->pushbool(sqvm, IsLocalHttpAllowed()); + return SQRESULT_NOTNULL; +} + +ON_DLL_LOAD_RELIESON("client.dll", HttpRequestHandler_ClientInit, ClientSquirrel, (CModule module)) +{ + g_httpRequestHandler->RegisterSQFuncs<ScriptContext::CLIENT>(); + g_httpRequestHandler->RegisterSQFuncs<ScriptContext::UI>(); +} + +ON_DLL_LOAD_RELIESON("server.dll", HttpRequestHandler_ServerInit, ServerSquirrel, (CModule module)) +{ + g_httpRequestHandler->RegisterSQFuncs<ScriptContext::SERVER>(); +} + +ON_DLL_LOAD("engine.dll", HttpRequestHandler_Init, (CModule module)) +{ + g_httpRequestHandler = new HttpRequestHandler; + g_httpRequestHandler->StartHttpRequestHandler(); +} diff --git a/NorthstarDLL/scripts/scripthttprequesthandler.h b/NorthstarDLL/scripts/scripthttprequesthandler.h new file mode 100644 index 00000000..0f888b6e --- /dev/null +++ b/NorthstarDLL/scripts/scripthttprequesthandler.h @@ -0,0 +1,132 @@ +#pragma once + +#include "pch.h" + +enum class ScriptContext; + +// These definitions below should match on the Squirrel side so we can easily pass them along through a function. + +/** + * Allowed methods for an HttpRequest. + */ +namespace HttpRequestMethod +{ + enum Type + { + HRM_GET = 0, + HRM_POST = 1, + HRM_HEAD = 2, + HRM_PUT = 3, + HRM_DELETE = 4, + HRM_PATCH = 5, + HRM_OPTIONS = 6, + }; + + /** Returns the HTTP string representation of the given method. */ + inline std::string ToString(HttpRequestMethod::Type method) + { + switch (method) + { + case HttpRequestMethod::HRM_GET: + return "GET"; + case HttpRequestMethod::HRM_POST: + return "POST"; + case HttpRequestMethod::HRM_HEAD: + return "HEAD"; + case HttpRequestMethod::HRM_PUT: + return "PUT"; + case HttpRequestMethod::HRM_DELETE: + return "DELETE"; + case HttpRequestMethod::HRM_PATCH: + return "PATCH"; + case HttpRequestMethod::HRM_OPTIONS: + return "OPTIONS"; + default: + return "INVALID"; + } + } + + /** Whether or not the given method should be treated like a POST for curlopts. */ + bool UsesCurlPostOptions(HttpRequestMethod::Type method) + { + switch (method) + { + case HttpRequestMethod::HRM_POST: + case HttpRequestMethod::HRM_PUT: + case HttpRequestMethod::HRM_DELETE: + case HttpRequestMethod::HRM_PATCH: + return true; + default: + return false; + } + } + + /** Whether or not the given http request method can have query parameters in the URL. */ + bool CanHaveQueryParameters(HttpRequestMethod::Type method) + { + return method == HttpRequestMethod::HRM_GET || UsesCurlPostOptions(method); + } +}; // namespace HttpRequestMethod + +/** Contains data about an http request that has been queued. */ +struct HttpRequest +{ + /** Method used for this http request. */ + HttpRequestMethod::Type method; + + /** Base URL of this http request. */ + std::string baseUrl; + + /** Headers used for this http request. Some may get overridden or ignored. */ + std::unordered_map<std::string, std::vector<std::string>> headers; + + /** Query parameters for this http request. */ + std::unordered_map<std::string, std::vector<std::string>> queryParameters; + + /** The content type of this http request. Defaults to text/plain & UTF-8 charset. */ + std::string contentType = "text/plain; charset=utf-8"; + + /** The body of this http request. If set, will override queryParameters.*/ + std::string body; + + /** The timeout for the http request, in seconds. Must be between 1 and 60. */ + int timeout; + + /** If set, the override to use for the User-Agent header. */ + std::string userAgent; +}; + +/** + * Handles making HTTP requests and sending the responses back to Squirrel. + */ +class HttpRequestHandler +{ + public: + HttpRequestHandler(); + + // Start/Stop the HTTP request handler. Right now this doesn't do much. + void StartHttpRequestHandler(); + void StopHttpRequestHandler(); + + // Whether or not this http request handler is currently running. + bool IsRunning() const + { + return m_bIsHttpRequestHandlerRunning; + } + + /** + * Creates a new thread to execute an HTTP request. + * @param requestParameters The parameters to use for this http request. + * @returns The handle for the http request being sent, or -1 if the request failed. + */ + template <ScriptContext context> int MakeHttpRequest(const HttpRequest& requestParameters); + + /** Registers the HTTP request Squirrel functions for the given script context. */ + template <ScriptContext context> void RegisterSQFuncs(); + + private: + int m_iLastRequestHandle = 0; + std::atomic_bool m_bIsHttpRequestHandlerRunning = false; +}; + +extern HttpRequestHandler* g_httpRequestHandler; diff --git a/NorthstarDLL/scriptjson.cpp b/NorthstarDLL/scripts/scriptjson.cpp index 049a7b20..f41b0457 100644 --- a/NorthstarDLL/scriptjson.cpp +++ b/NorthstarDLL/scripts/scriptjson.cpp @@ -1,5 +1,5 @@ #include "pch.h" -#include "squirrel.h" +#include "squirrel/squirrel.h" #include "rapidjson/error/en.h" #include "rapidjson/document.h" @@ -117,32 +117,19 @@ template <ScriptContext context> void EncodeJSONTable( rapidjson::StringRef(node->key._VAL.asString->_val), rapidjson::StringRef(node->val._VAL.asString->_val), allocator); break; case OT_INTEGER: - obj->AddMember( - rapidjson::StringRef(node->key._VAL.asString->_val), - rapidjson::GenericValue<rapidjson::UTF8<char>, rapidjson::MemoryPoolAllocator<SourceAllocator>>( - (int)node->val._VAL.asInteger), - allocator); + obj->AddMember(rapidjson::StringRef(node->key._VAL.asString->_val), node->val._VAL.asInteger, allocator); break; case OT_FLOAT: - obj->AddMember( - rapidjson::StringRef(node->key._VAL.asString->_val), - rapidjson::GenericValue<rapidjson::UTF8<char>, rapidjson::MemoryPoolAllocator<SourceAllocator>>(node->val._VAL.asFloat), - allocator); + obj->AddMember(rapidjson::StringRef(node->key._VAL.asString->_val), node->val._VAL.asFloat, allocator); break; case OT_BOOL: if (node->val._VAL.asInteger) { - obj->AddMember( - rapidjson::StringRef(node->key._VAL.asString->_val), - rapidjson::GenericValue<rapidjson::UTF8<char>, rapidjson::MemoryPoolAllocator<SourceAllocator>>(true), - allocator); + obj->AddMember(rapidjson::StringRef(node->key._VAL.asString->_val), true, allocator); } else { - obj->AddMember( - rapidjson::StringRef(node->key._VAL.asString->_val), - rapidjson::GenericValue<rapidjson::UTF8<char>, rapidjson::MemoryPoolAllocator<SourceAllocator>>(false), - allocator); + obj->AddMember(rapidjson::StringRef(node->key._VAL.asString->_val), false, allocator); } break; case OT_TABLE: @@ -179,14 +166,10 @@ template <ScriptContext context> void EncodeJSONArray( obj->PushBack(rapidjson::StringRef(node->_VAL.asString->_val), allocator); break; case OT_INTEGER: - obj->PushBack( - rapidjson::GenericValue<rapidjson::UTF8<char>, rapidjson::MemoryPoolAllocator<SourceAllocator>>((int)node->_VAL.asInteger), - allocator); + obj->PushBack(node->_VAL.asInteger, allocator); break; case OT_FLOAT: - obj->PushBack( - rapidjson::GenericValue<rapidjson::UTF8<char>, rapidjson::MemoryPoolAllocator<SourceAllocator>>(node->_VAL.asFloat), - allocator); + obj->PushBack(node->_VAL.asFloat, allocator); break; case OT_BOOL: if (node->_VAL.asInteger) diff --git a/NorthstarDLL/scripts/scriptutility.cpp b/NorthstarDLL/scripts/scriptutility.cpp new file mode 100644 index 00000000..fa35df7b --- /dev/null +++ b/NorthstarDLL/scripts/scriptutility.cpp @@ -0,0 +1,29 @@ +#include "pch.h" +#include "squirrel/squirrel.h" +#include "client/r2client.h" +#include "engine/r2engine.h" + +// asset function StringToAsset( string assetName ) +ADD_SQFUNC( + "asset", + StringToAsset, + "string assetName", + "converts a given string to an asset", + ScriptContext::UI | ScriptContext::CLIENT | ScriptContext::SERVER) +{ + g_pSquirrel<context>->pushasset(sqvm, g_pSquirrel<context>->getstring(sqvm, 1), -1); + return SQRESULT_NOTNULL; +} + +// string function NSGetLocalPlayerUID() +ADD_SQFUNC( + "string", NSGetLocalPlayerUID, "", "Returns the local player's uid.", ScriptContext::UI | ScriptContext::CLIENT | ScriptContext::SERVER) +{ + if (R2::g_pLocalPlayerUserID) + { + g_pSquirrel<context>->pushstring(sqvm, R2::g_pLocalPlayerUserID); + return SQRESULT_NOTNULL; + } + + return SQRESULT_NULL; +} diff --git a/NorthstarDLL/miscserverfixes.cpp b/NorthstarDLL/scripts/server/miscserverfixes.cpp index 4feca505..4feca505 100644 --- a/NorthstarDLL/miscserverfixes.cpp +++ b/NorthstarDLL/scripts/server/miscserverfixes.cpp diff --git a/NorthstarDLL/miscserverscript.cpp b/NorthstarDLL/scripts/server/miscserverscript.cpp index a8e7264b..b58bdfda 100644 --- a/NorthstarDLL/miscserverscript.cpp +++ b/NorthstarDLL/scripts/server/miscserverscript.cpp @@ -1,10 +1,10 @@ #include "pch.h" -#include "squirrel.h" -#include "masterserver.h" -#include "serverauthentication.h" -#include "dedicated.h" -#include "r2client.h" -#include "r2server.h" +#include "squirrel/squirrel.h" +#include "masterserver/masterserver.h" +#include "server/auth/serverauthentication.h" +#include "dedicated/dedicated.h" +#include "client/r2client.h" +#include "server/r2server.h" #include <filesystem> @@ -58,3 +58,44 @@ ADD_SQFUNC("bool", NSIsDedicated, "", "", ScriptContext::SERVER) g_pSquirrel<context>->pushbool(sqvm, IsDedicatedServer()); return SQRESULT_NOTNULL; } + +ADD_SQFUNC( + "bool", + NSDisconnectPlayer, + "entity player, string reason", + "Disconnects the player from the server with the given reason", + ScriptContext::SERVER) +{ + const R2::CBasePlayer* pPlayer = g_pSquirrel<context>->getentity<R2::CBasePlayer>(sqvm, 1); + const char* reason = g_pSquirrel<context>->getstring(sqvm, 2); + + if (!pPlayer) + { + spdlog::warn("Attempted to call NSDisconnectPlayer() with null player."); + + g_pSquirrel<context>->pushbool(sqvm, false); + return SQRESULT_NOTNULL; + } + + // Shouldn't happen but I like sanity checks. + R2::CBaseClient* pClient = &R2::g_pClientArray[pPlayer->m_nPlayerIndex - 1]; + if (!pClient) + { + spdlog::warn("NSDisconnectPlayer(): player entity has null CBaseClient!"); + + g_pSquirrel<context>->pushbool(sqvm, false); + return SQRESULT_NOTNULL; + } + + if (reason) + { + R2::CBaseClient__Disconnect(pClient, 1, reason); + } + else + { + R2::CBaseClient__Disconnect(pClient, 1, "Disconnected by the server."); + } + + g_pSquirrel<context>->pushbool(sqvm, true); + return SQRESULT_NOTNULL; +} diff --git a/NorthstarDLL/scriptuserinfo.cpp b/NorthstarDLL/scripts/server/scriptuserinfo.cpp index 415ae3ea..68baac0e 100644 --- a/NorthstarDLL/scriptuserinfo.cpp +++ b/NorthstarDLL/scripts/server/scriptuserinfo.cpp @@ -1,105 +1,105 @@ -#include "pch.h"
-#include "squirrel.h"
-#include "r2engine.h"
-#include "r2server.h"
-
-// clang-format off
-ADD_SQFUNC("string", GetUserInfoKVString_Internal, "entity player, string key, string defaultValue = \"\"",
- "Gets the string value of a given player's userinfo convar by name", ScriptContext::SERVER)
-// clang-format on
-{
- const R2::CBasePlayer* pPlayer = g_pSquirrel<ScriptContext::SERVER>->getentity<R2::CBasePlayer>(sqvm, 1);
- if (!pPlayer)
- {
- g_pSquirrel<ScriptContext::SERVER>->raiseerror(sqvm, "player is null");
- return SQRESULT_ERROR;
- }
-
- const char* pKey = g_pSquirrel<ScriptContext::SERVER>->getstring(sqvm, 2);
- const char* pDefaultValue = g_pSquirrel<ScriptContext::SERVER>->getstring(sqvm, 3);
-
- const char* pResult = R2::g_pClientArray[pPlayer->m_nPlayerIndex - 1].m_ConVars->GetString(pKey, pDefaultValue);
- g_pSquirrel<ScriptContext::SERVER>->pushstring(sqvm, pResult);
- return SQRESULT_NOTNULL;
-}
-
-// clang-format off
-ADD_SQFUNC("asset", GetUserInfoKVAsset_Internal, "entity player, string key, asset defaultValue = $\"\"",
- "Gets the asset value of a given player's userinfo convar by name", ScriptContext::SERVER)
-// clang-format on
-{
- const R2::CBasePlayer* pPlayer = g_pSquirrel<ScriptContext::SERVER>->getentity<R2::CBasePlayer>(sqvm, 1);
- if (!pPlayer)
- {
- g_pSquirrel<ScriptContext::SERVER>->raiseerror(sqvm, "player is null");
- return SQRESULT_ERROR;
- }
-
- const char* pKey = g_pSquirrel<ScriptContext::SERVER>->getstring(sqvm, 2);
- const char* pDefaultValue;
- g_pSquirrel<ScriptContext::SERVER>->getasset(sqvm, 3, &pDefaultValue);
-
- const char* pResult = R2::g_pClientArray[pPlayer->m_nPlayerIndex - 1].m_ConVars->GetString(pKey, pDefaultValue);
- g_pSquirrel<ScriptContext::SERVER>->pushasset(sqvm, pResult);
- return SQRESULT_NOTNULL;
-}
-
-// clang-format off
-ADD_SQFUNC("int", GetUserInfoKVInt_Internal, "entity player, string key, int defaultValue = 0",
- "Gets the int value of a given player's userinfo convar by name", ScriptContext::SERVER)
-// clang-format on
-{
- const R2::CBasePlayer* pPlayer = g_pSquirrel<ScriptContext::SERVER>->getentity<R2::CBasePlayer>(sqvm, 1);
- if (!pPlayer)
- {
- g_pSquirrel<ScriptContext::SERVER>->raiseerror(sqvm, "player is null");
- return SQRESULT_ERROR;
- }
-
- const char* pKey = g_pSquirrel<ScriptContext::SERVER>->getstring(sqvm, 2);
- const int iDefaultValue = g_pSquirrel<ScriptContext::SERVER>->getinteger(sqvm, 3);
-
- const int iResult = R2::g_pClientArray[pPlayer->m_nPlayerIndex - 1].m_ConVars->GetInt(pKey, iDefaultValue);
- g_pSquirrel<ScriptContext::SERVER>->pushinteger(sqvm, iResult);
- return SQRESULT_NOTNULL;
-}
-
-// clang-format off
-ADD_SQFUNC("float", GetUserInfoKVFloat_Internal, "entity player, string key, float defaultValue = 0",
- "Gets the float value of a given player's userinfo convar by name", ScriptContext::SERVER)
-// clang-format on
-{
- const R2::CBasePlayer* pPlayer = g_pSquirrel<ScriptContext::SERVER>->getentity<R2::CBasePlayer>(sqvm, 1);
- if (!pPlayer)
- {
- g_pSquirrel<ScriptContext::SERVER>->raiseerror(sqvm, "player is null");
- return SQRESULT_ERROR;
- }
-
- const char* pKey = g_pSquirrel<ScriptContext::SERVER>->getstring(sqvm, 2);
- const float flDefaultValue = g_pSquirrel<ScriptContext::SERVER>->getfloat(sqvm, 3);
-
- const float flResult = R2::g_pClientArray[pPlayer->m_nPlayerIndex - 1].m_ConVars->GetFloat(pKey, flDefaultValue);
- g_pSquirrel<ScriptContext::SERVER>->pushfloat(sqvm, flResult);
- return SQRESULT_NOTNULL;
-}
-
-// clang-format off
-ADD_SQFUNC("bool", GetUserInfoKVBool_Internal, "entity player, string key, bool defaultValue = false",
- "Gets the bool value of a given player's userinfo convar by name", ScriptContext::SERVER)
-// clang-format on
-{
- const R2::CBasePlayer* pPlayer = g_pSquirrel<ScriptContext::SERVER>->getentity<R2::CBasePlayer>(sqvm, 1);
- if (!pPlayer)
- {
- g_pSquirrel<ScriptContext::SERVER>->raiseerror(sqvm, "player is null");
- return SQRESULT_ERROR;
- }
-
- const char* pKey = g_pSquirrel<ScriptContext::SERVER>->getstring(sqvm, 2);
- const bool bDefaultValue = g_pSquirrel<ScriptContext::SERVER>->getbool(sqvm, 3);
-
- const bool bResult = R2::g_pClientArray[pPlayer->m_nPlayerIndex - 1].m_ConVars->GetInt(pKey, bDefaultValue);
- g_pSquirrel<ScriptContext::SERVER>->pushbool(sqvm, bResult);
- return SQRESULT_NOTNULL;
-}
+#include "pch.h" +#include "squirrel/squirrel.h" +#include "engine/r2engine.h" +#include "server/r2server.h" + +// clang-format off +ADD_SQFUNC("string", GetUserInfoKVString_Internal, "entity player, string key, string defaultValue = \"\"", + "Gets the string value of a given player's userinfo convar by name", ScriptContext::SERVER) +// clang-format on +{ + const R2::CBasePlayer* pPlayer = g_pSquirrel<ScriptContext::SERVER>->getentity<R2::CBasePlayer>(sqvm, 1); + if (!pPlayer) + { + g_pSquirrel<ScriptContext::SERVER>->raiseerror(sqvm, "player is null"); + return SQRESULT_ERROR; + } + + const char* pKey = g_pSquirrel<ScriptContext::SERVER>->getstring(sqvm, 2); + const char* pDefaultValue = g_pSquirrel<ScriptContext::SERVER>->getstring(sqvm, 3); + + const char* pResult = R2::g_pClientArray[pPlayer->m_nPlayerIndex - 1].m_ConVars->GetString(pKey, pDefaultValue); + g_pSquirrel<ScriptContext::SERVER>->pushstring(sqvm, pResult); + return SQRESULT_NOTNULL; +} + +// clang-format off +ADD_SQFUNC("asset", GetUserInfoKVAsset_Internal, "entity player, string key, asset defaultValue = $\"\"", + "Gets the asset value of a given player's userinfo convar by name", ScriptContext::SERVER) +// clang-format on +{ + const R2::CBasePlayer* pPlayer = g_pSquirrel<ScriptContext::SERVER>->getentity<R2::CBasePlayer>(sqvm, 1); + if (!pPlayer) + { + g_pSquirrel<ScriptContext::SERVER>->raiseerror(sqvm, "player is null"); + return SQRESULT_ERROR; + } + + const char* pKey = g_pSquirrel<ScriptContext::SERVER>->getstring(sqvm, 2); + const char* pDefaultValue; + g_pSquirrel<ScriptContext::SERVER>->getasset(sqvm, 3, &pDefaultValue); + + const char* pResult = R2::g_pClientArray[pPlayer->m_nPlayerIndex - 1].m_ConVars->GetString(pKey, pDefaultValue); + g_pSquirrel<ScriptContext::SERVER>->pushasset(sqvm, pResult); + return SQRESULT_NOTNULL; +} + +// clang-format off +ADD_SQFUNC("int", GetUserInfoKVInt_Internal, "entity player, string key, int defaultValue = 0", + "Gets the int value of a given player's userinfo convar by name", ScriptContext::SERVER) +// clang-format on +{ + const R2::CBasePlayer* pPlayer = g_pSquirrel<ScriptContext::SERVER>->getentity<R2::CBasePlayer>(sqvm, 1); + if (!pPlayer) + { + g_pSquirrel<ScriptContext::SERVER>->raiseerror(sqvm, "player is null"); + return SQRESULT_ERROR; + } + + const char* pKey = g_pSquirrel<ScriptContext::SERVER>->getstring(sqvm, 2); + const int iDefaultValue = g_pSquirrel<ScriptContext::SERVER>->getinteger(sqvm, 3); + + const int iResult = R2::g_pClientArray[pPlayer->m_nPlayerIndex - 1].m_ConVars->GetInt(pKey, iDefaultValue); + g_pSquirrel<ScriptContext::SERVER>->pushinteger(sqvm, iResult); + return SQRESULT_NOTNULL; +} + +// clang-format off +ADD_SQFUNC("float", GetUserInfoKVFloat_Internal, "entity player, string key, float defaultValue = 0", + "Gets the float value of a given player's userinfo convar by name", ScriptContext::SERVER) +// clang-format on +{ + const R2::CBasePlayer* pPlayer = g_pSquirrel<ScriptContext::SERVER>->getentity<R2::CBasePlayer>(sqvm, 1); + if (!pPlayer) + { + g_pSquirrel<ScriptContext::SERVER>->raiseerror(sqvm, "player is null"); + return SQRESULT_ERROR; + } + + const char* pKey = g_pSquirrel<ScriptContext::SERVER>->getstring(sqvm, 2); + const float flDefaultValue = g_pSquirrel<ScriptContext::SERVER>->getfloat(sqvm, 3); + + const float flResult = R2::g_pClientArray[pPlayer->m_nPlayerIndex - 1].m_ConVars->GetFloat(pKey, flDefaultValue); + g_pSquirrel<ScriptContext::SERVER>->pushfloat(sqvm, flResult); + return SQRESULT_NOTNULL; +} + +// clang-format off +ADD_SQFUNC("bool", GetUserInfoKVBool_Internal, "entity player, string key, bool defaultValue = false", + "Gets the bool value of a given player's userinfo convar by name", ScriptContext::SERVER) +// clang-format on +{ + const R2::CBasePlayer* pPlayer = g_pSquirrel<ScriptContext::SERVER>->getentity<R2::CBasePlayer>(sqvm, 1); + if (!pPlayer) + { + g_pSquirrel<ScriptContext::SERVER>->raiseerror(sqvm, "player is null"); + return SQRESULT_ERROR; + } + + const char* pKey = g_pSquirrel<ScriptContext::SERVER>->getstring(sqvm, 2); + const bool bDefaultValue = g_pSquirrel<ScriptContext::SERVER>->getbool(sqvm, 3); + + const bool bResult = R2::g_pClientArray[pPlayer->m_nPlayerIndex - 1].m_ConVars->GetInt(pKey, bDefaultValue); + g_pSquirrel<ScriptContext::SERVER>->pushbool(sqvm, bResult); + return SQRESULT_NOTNULL; +} diff --git a/NorthstarDLL/scriptutility.cpp b/NorthstarDLL/scriptutility.cpp deleted file mode 100644 index 1ff8e4bb..00000000 --- a/NorthstarDLL/scriptutility.cpp +++ /dev/null @@ -1,14 +0,0 @@ -#include "pch.h" -#include "squirrel.h" - -// asset function StringToAsset( string assetName ) -ADD_SQFUNC( - "asset", - StringToAsset, - "string assetName", - "converts a given string to an asset", - ScriptContext::UI | ScriptContext::CLIENT | ScriptContext::SERVER) -{ - g_pSquirrel<context>->pushasset(sqvm, g_pSquirrel<context>->getstring(sqvm, 1), -1); - return SQRESULT_NOTNULL; -} diff --git a/NorthstarDLL/bansystem.cpp b/NorthstarDLL/server/auth/bansystem.cpp index 5ba24cf1..d3dff0c7 100644 --- a/NorthstarDLL/bansystem.cpp +++ b/NorthstarDLL/server/auth/bansystem.cpp @@ -2,11 +2,11 @@ #include "pch.h" #include "bansystem.h" #include "serverauthentication.h" -#include "maxplayers.h" -#include "concommand.h" -#include "r2server.h" -#include "r2engine.h" -#include "nsprefix.h" +#include "shared/maxplayers.h" +#include "core/convar/concommand.h" +#include "server/r2server.h" +#include "engine/r2engine.h" +#include "config/profile.h" #include <filesystem> diff --git a/NorthstarDLL/bansystem.h b/NorthstarDLL/server/auth/bansystem.h index 6f180126..6f180126 100644 --- a/NorthstarDLL/bansystem.h +++ b/NorthstarDLL/server/auth/bansystem.h diff --git a/NorthstarDLL/serverauthentication.cpp b/NorthstarDLL/server/auth/serverauthentication.cpp index 53892623..c6283b7a 100644 --- a/NorthstarDLL/serverauthentication.cpp +++ b/NorthstarDLL/server/auth/serverauthentication.cpp @@ -1,21 +1,21 @@ #include "pch.h" #include "serverauthentication.h" -#include "limits.h" -#include "cvar.h" -#include "convar.h" -#include "masterserver.h" -#include "serverpresence.h" -#include "hoststate.h" -#include "maxplayers.h" +#include "shared/exploit_fixes/ns_limits.h" +#include "core/convar/cvar.h" +#include "core/convar/convar.h" +#include "masterserver/masterserver.h" +#include "server/serverpresence.h" +#include "engine/hoststate.h" +#include "shared/maxplayers.h" #include "bansystem.h" -#include "concommand.h" -#include "dedicated.h" -#include "nsprefix.h" -#include "tier0.h" -#include "r2engine.h" -#include "r2client.h" -#include "r2server.h" -#include "bots.h" +#include "core/convar/concommand.h" +#include "dedicated/dedicated.h" +#include "config/profile.h" +#include "core/tier0.h" +#include "engine/r2engine.h" +#include "client/r2client.h" +#include "server/r2server.h" +#include "server/bots.h" #include "httplib.h" @@ -328,6 +328,9 @@ bool,, (R2::CBaseClient* self, char* pName, void* pNetChannel, char bFakePlayer, return false; } + // we already know this player's authentication data is legit, actually write it to them now + g_pServerAuthentication->AuthenticatePlayer(self, iNextPlayerUid, pNextPlayerToken); + // try to actually connect the player if (!CBaseClient__Connect(self, pVerifiedName, pNetChannel, bFakePlayer, a5, pDisconnectReason, a7)) return false; diff --git a/NorthstarDLL/serverauthentication.h b/NorthstarDLL/server/auth/serverauthentication.h index 33154118..2ca07a8a 100644 --- a/NorthstarDLL/serverauthentication.h +++ b/NorthstarDLL/server/auth/serverauthentication.h @@ -1,7 +1,7 @@ #pragma once -#include "convar.h" +#include "core/convar/convar.h" #include "httplib.h" -#include "r2engine.h" +#include "engine/r2engine.h" #include <unordered_map> #include <string> diff --git a/NorthstarDLL/bots.cpp b/NorthstarDLL/server/bots.cpp index f8a37d26..fe376853 100644 --- a/NorthstarDLL/bots.cpp +++ b/NorthstarDLL/server/bots.cpp @@ -1,12 +1,12 @@ #include "pch.h"
#include "bots.h"
-#include "concommand.h"
-#include "r2engine.h"
-#include "r2server.h"
-#include "playlist.h"
-#include "maxplayers.h"
-#include "serverauthentication.h"
+#include "core/convar/concommand.h"
+#include "engine/r2engine.h"
+#include "shared/maxplayers.h"
+#include "shared/playlist.h"
+#include "server/auth/serverauthentication.h"
+#include "server/r2server.h"
AUTOHOOK_INIT()
diff --git a/NorthstarDLL/bots.h b/NorthstarDLL/server/bots.h index 5973983a..276c0702 100644 --- a/NorthstarDLL/bots.h +++ b/NorthstarDLL/server/bots.h @@ -1,6 +1,6 @@ #pragma once
-#include "convar.h"
-#include "r2engine.h"
+#include "core/convar/convar.h"
+#include "engine/r2engine.h"
class ServerBotManager
{
diff --git a/NorthstarDLL/buildainfile.cpp b/NorthstarDLL/server/buildainfile.cpp index 8190adba..f6dc4717 100644 --- a/NorthstarDLL/buildainfile.cpp +++ b/NorthstarDLL/server/buildainfile.cpp @@ -1,7 +1,7 @@ #include "pch.h" -#include "convar.h" -#include "hoststate.h" -#include "r2engine.h" +#include "core/convar/convar.h" +#include "engine/hoststate.h" +#include "engine/r2engine.h" #include <fstream> #include <filesystem> diff --git a/NorthstarDLL/r2server.cpp b/NorthstarDLL/server/r2server.cpp index 50cfa239..50cfa239 100644 --- a/NorthstarDLL/r2server.cpp +++ b/NorthstarDLL/server/r2server.cpp diff --git a/NorthstarDLL/r2server.h b/NorthstarDLL/server/r2server.h index 5d69f53e..237317df 100644 --- a/NorthstarDLL/r2server.h +++ b/NorthstarDLL/server/r2server.h @@ -1,6 +1,6 @@ #pragma once -#include "vector.h" +#include "core/math/vector.h" // use the R2 namespace for game funcs namespace R2 diff --git a/NorthstarDLL/serverchathooks.cpp b/NorthstarDLL/server/serverchathooks.cpp index e4e67e05..57c2c31a 100644 --- a/NorthstarDLL/serverchathooks.cpp +++ b/NorthstarDLL/server/serverchathooks.cpp @@ -1,8 +1,8 @@ #include "pch.h" #include "serverchathooks.h" -#include "limits.h" -#include "squirrel.h" -#include "r2server.h" +#include "shared/exploit_fixes/ns_limits.h" +#include "squirrel/squirrel.h" +#include "server/r2server.h" #include <rapidjson/document.h> #include <rapidjson/stringbuffer.h> diff --git a/NorthstarDLL/serverchathooks.h b/NorthstarDLL/server/serverchathooks.h index 1d8a806a..1d8a806a 100644 --- a/NorthstarDLL/serverchathooks.h +++ b/NorthstarDLL/server/serverchathooks.h diff --git a/NorthstarDLL/serverpresence.cpp b/NorthstarDLL/server/serverpresence.cpp index fb8cf624..bda5e7fe 100644 --- a/NorthstarDLL/serverpresence.cpp +++ b/NorthstarDLL/server/serverpresence.cpp @@ -1,8 +1,8 @@ #include "pch.h" #include "serverpresence.h" -#include "playlist.h" -#include "tier0.h" -#include "convar.h" +#include "shared/playlist.h" +#include "core/tier0.h" +#include "core/convar/convar.h" #include <regex> diff --git a/NorthstarDLL/serverpresence.h b/NorthstarDLL/server/serverpresence.h index 97b4654c..125b2e68 100644 --- a/NorthstarDLL/serverpresence.h +++ b/NorthstarDLL/server/serverpresence.h @@ -1,5 +1,5 @@ #pragma once -#include "convar.h" +#include "core/convar/convar.h" struct ServerPresence { diff --git a/NorthstarDLL/exploitfixes.cpp b/NorthstarDLL/shared/exploit_fixes/exploitfixes.cpp index 240c352c..e4430fd4 100644 --- a/NorthstarDLL/exploitfixes.cpp +++ b/NorthstarDLL/shared/exploit_fixes/exploitfixes.cpp @@ -1,11 +1,11 @@ #include "pch.h" -#include "cvar.h" -#include "limits.h" -#include "dedicated.h" -#include "tier0.h" -#include "r2engine.h" -#include "r2client.h" -#include "vector.h" +#include "core/convar/cvar.h" +#include "ns_limits.h" +#include "dedicated/dedicated.h" +#include "core/tier0.h" +#include "engine/r2engine.h" +#include "client/r2client.h" +#include "core/math/vector.h" AUTOHOOK_INIT() diff --git a/NorthstarDLL/exploitfixes_lzss.cpp b/NorthstarDLL/shared/exploit_fixes/exploitfixes_lzss.cpp index 4205133a..4205133a 100644 --- a/NorthstarDLL/exploitfixes_lzss.cpp +++ b/NorthstarDLL/shared/exploit_fixes/exploitfixes_lzss.cpp diff --git a/NorthstarDLL/exploitfixes_utf8parser.cpp b/NorthstarDLL/shared/exploit_fixes/exploitfixes_utf8parser.cpp index e2510765..e2510765 100644 --- a/NorthstarDLL/exploitfixes_utf8parser.cpp +++ b/NorthstarDLL/shared/exploit_fixes/exploitfixes_utf8parser.cpp diff --git a/NorthstarDLL/limits.cpp b/NorthstarDLL/shared/exploit_fixes/ns_limits.cpp index c254de52..49f80bab 100644 --- a/NorthstarDLL/limits.cpp +++ b/NorthstarDLL/shared/exploit_fixes/ns_limits.cpp @@ -1,13 +1,13 @@ #include "pch.h" -#include "limits.h" -#include "hoststate.h" -#include "r2client.h" -#include "r2engine.h" -#include "r2server.h" -#include "maxplayers.h" -#include "tier0.h" -#include "vector.h" -#include "serverauthentication.h" +#include "ns_limits.h" +#include "engine/hoststate.h" +#include "client/r2client.h" +#include "engine/r2engine.h" +#include "server/r2server.h" +#include "shared/maxplayers.h" +#include "core/tier0.h" +#include "core/math/vector.h" +#include "server/auth/serverauthentication.h" AUTOHOOK_INIT() diff --git a/NorthstarDLL/limits.h b/NorthstarDLL/shared/exploit_fixes/ns_limits.h index 068f91c9..bbc0a85f 100644 --- a/NorthstarDLL/limits.h +++ b/NorthstarDLL/shared/exploit_fixes/ns_limits.h @@ -1,6 +1,6 @@ #pragma once -#include "r2engine.h" -#include "convar.h" +#include "engine/r2engine.h" +#include "core/convar/convar.h" #include <unordered_map> struct PlayerLimitData diff --git a/NorthstarDLL/keyvalues.cpp b/NorthstarDLL/shared/keyvalues.cpp index afb7ae30..fe7d6299 100644 --- a/NorthstarDLL/keyvalues.cpp +++ b/NorthstarDLL/shared/keyvalues.cpp @@ -1,1316 +1,1316 @@ -#include "pch.h"
-#include "keyvalues.h"
-#include <winnt.h>
-
-// implementation of the ConVar class
-// heavily based on https://github.com/Mauler125/r5sdk/blob/master/r5dev/vpc/keyvalues.cpp
-
-typedef int HKeySymbol;
-#define INVALID_KEY_SYMBOL (-1)
-
-#define MAKE_3_BYTES_FROM_1_AND_2(x1, x2) ((((uint16_t)x2) << 8) | (uint8_t)(x1))
-#define SPLIT_3_BYTES_INTO_1_AND_2(x1, x2, x3) \
- do \
- { \
- x1 = (uint8_t)(x3); \
- x2 = (uint16_t)((x3) >> 8); \
- } while (0)
-
-struct CKeyValuesSystem
-{
- public:
- struct __VTable
- {
- char pad0[8 * 3]; // 2 methods
- HKeySymbol (*GetSymbolForString)(CKeyValuesSystem* self, const char* name, bool bCreate);
- const char* (*GetStringForSymbol)(CKeyValuesSystem* self, HKeySymbol symbol);
- char pad1[8 * 5];
- HKeySymbol (*GetSymbolForStringCaseSensitive)(
- CKeyValuesSystem* self, HKeySymbol& hCaseInsensitiveSymbol, const char* name, bool bCreate);
- };
-
- const __VTable* m_pVtable;
-};
-
-int (*V_UTF8ToUnicode)(const char* pUTF8, wchar_t* pwchDest, int cubDestSizeInBytes);
-int (*V_UnicodeToUTF8)(const wchar_t* pUnicode, char* pUTF8, int cubDestSizeInBytes);
-CKeyValuesSystem* (*KeyValuesSystem)();
-
-KeyValues::KeyValues() {} // default constructor for copying and such
-
-//-----------------------------------------------------------------------------
-// Purpose: Constructor
-// Input : *pszSetName -
-//-----------------------------------------------------------------------------
-KeyValues::KeyValues(const char* pszSetName)
-{
- Init();
- SetName(pszSetName);
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Constructor
-// Input : *pszSetName -
-// *pszFirstKey -
-// *pszFirstValue -
-//-----------------------------------------------------------------------------
-KeyValues::KeyValues(const char* pszSsetName, const char* pszFirstKey, const char* pszFirstValue)
-{
- Init();
- SetName(pszSsetName);
- SetString(pszFirstKey, pszFirstValue);
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Constructor
-// Input : *pszSetName -
-// *pszFirstKey -
-// *pwszFirstValue -
-//-----------------------------------------------------------------------------
-KeyValues::KeyValues(const char* pszSetName, const char* pszFirstKey, const wchar_t* pwszFirstValue)
-{
- Init();
- SetName(pszSetName);
- SetWString(pszFirstKey, pwszFirstValue);
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Constructor
-// Input : *pszSetName -
-// *pszFirstKey -
-// iFirstValue -
-//-----------------------------------------------------------------------------
-KeyValues::KeyValues(const char* pszSetName, const char* pszFirstKey, int iFirstValue)
-{
- Init();
- SetName(pszSetName);
- SetInt(pszFirstKey, iFirstValue);
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Constructor
-// Input : *pszSetName -
-// *pszFirstKey -
-// *pszFirstValue -
-// *pszSecondKey -
-// *pszSecondValue -
-//-----------------------------------------------------------------------------
-KeyValues::KeyValues(
- const char* pszSetName, const char* pszFirstKey, const char* pszFirstValue, const char* pszSecondKey, const char* pszSecondValue)
-{
- Init();
- SetName(pszSetName);
- SetString(pszFirstKey, pszFirstValue);
- SetString(pszSecondKey, pszSecondValue);
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Constructor
-// Input : *pszSetName -
-// *pszFirstKey -
-// iFirstValue -
-// *pszSecondKey -
-// iSecondValue -
-//-----------------------------------------------------------------------------
-KeyValues::KeyValues(const char* pszSetName, const char* pszFirstKey, int iFirstValue, const char* pszSecondKey, int iSecondValue)
-{
- Init();
- SetName(pszSetName);
- SetInt(pszFirstKey, iFirstValue);
- SetInt(pszSecondKey, iSecondValue);
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Destructor
-//-----------------------------------------------------------------------------
-KeyValues::~KeyValues(void)
-{
- RemoveEverything();
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Initialize member variables
-//-----------------------------------------------------------------------------
-void KeyValues::Init(void)
-{
- m_iKeyName = 0;
- m_iKeyNameCaseSensitive1 = 0;
- m_iKeyNameCaseSensitive2 = 0;
- m_iDataType = TYPE_NONE;
-
- m_pSub = nullptr;
- m_pPeer = nullptr;
- m_pChain = nullptr;
-
- m_sValue = nullptr;
- m_wsValue = nullptr;
- m_pValue = nullptr;
-
- m_bHasEscapeSequences = 0;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Clear out all subkeys, and the current value
-//-----------------------------------------------------------------------------
-void KeyValues::Clear(void)
-{
- delete m_pSub;
- m_pSub = nullptr;
- m_iDataType = TYPE_NONE;
-}
-
-//-----------------------------------------------------------------------------
-// for backwards compat - we used to need this to force the free to run from the same DLL
-// as the alloc
-//-----------------------------------------------------------------------------
-void KeyValues::DeleteThis(void)
-{
- delete this;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: remove everything
-//-----------------------------------------------------------------------------
-void KeyValues::RemoveEverything(void)
-{
- KeyValues* dat;
- KeyValues* datNext = nullptr;
- for (dat = m_pSub; dat != nullptr; dat = datNext)
- {
- datNext = dat->m_pPeer;
- dat->m_pPeer = nullptr;
- delete dat;
- }
-
- for (dat = m_pPeer; dat && dat != this; dat = datNext)
- {
- datNext = dat->m_pPeer;
- dat->m_pPeer = nullptr;
- delete dat;
- }
-
- delete[] m_sValue;
- m_sValue = nullptr;
- delete[] m_wsValue;
- m_wsValue = nullptr;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Find a keyValue, create it if it is not found.
-// Set bCreate to true to create the key if it doesn't already exist
-// (which ensures a valid pointer will be returned)
-// Input : *pszKeyName -
-// bCreate -
-// Output : *KeyValues
-//-----------------------------------------------------------------------------
-KeyValues* KeyValues::FindKey(const char* pszKeyName, bool bCreate)
-{
- assert(this, "Member function called on NULL KeyValues");
-
- if (!pszKeyName || !*pszKeyName)
- return this;
-
- const char* pSubStr = strchr(pszKeyName, '/');
-
- HKeySymbol iSearchStr = KeyValuesSystem()->m_pVtable->GetSymbolForString(KeyValuesSystem(), pszKeyName, bCreate);
- if (iSearchStr == INVALID_KEY_SYMBOL)
- {
- // not found, couldn't possibly be in key value list
- return nullptr;
- }
-
- KeyValues* pLastKVs = nullptr;
- KeyValues* pCurrentKVs;
- // find the searchStr in the current peer list
- for (pCurrentKVs = m_pSub; pCurrentKVs != NULL; pCurrentKVs = pCurrentKVs->m_pPeer)
- {
- pLastKVs = pCurrentKVs; // record the last item looked at (for if we need to append to the end of the list)
-
- // symbol compare
- if (pLastKVs->m_iKeyName == (uint32_t)iSearchStr)
- break;
- }
-
- if (!pCurrentKVs && m_pChain)
- pCurrentKVs = m_pChain->FindKey(pszKeyName, false);
-
- // make sure a key was found
- if (!pCurrentKVs)
- {
- if (bCreate)
- {
- // we need to create a new key
- pCurrentKVs = new KeyValues(pszKeyName);
- // Assert(dat != NULL);
-
- // insert new key at end of list
- if (pLastKVs)
- pLastKVs->m_pPeer = pCurrentKVs;
- else
- m_pSub = pCurrentKVs;
-
- pCurrentKVs->m_pPeer = NULL;
-
- // a key graduates to be a submsg as soon as it's m_pSub is set
- // this should be the only place m_pSub is set
- m_iDataType = TYPE_NONE;
- }
- else
- {
- return NULL;
- }
- }
-
- // if we've still got a subStr we need to keep looking deeper in the tree
- if (pSubStr)
- {
- // recursively chain down through the paths in the string
- return pCurrentKVs->FindKey(pSubStr + 1, bCreate);
- }
-
- return pCurrentKVs;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Locate last child. Returns NULL if we have no children
-// Output : *KeyValues
-//-----------------------------------------------------------------------------
-KeyValues* KeyValues::FindLastSubKey(void) const
-{
- // No children?
- if (m_pSub == nullptr)
- return nullptr;
-
- // Scan for the last one
- KeyValues* pLastChild = m_pSub;
- while (pLastChild->m_pPeer)
- pLastChild = pLastChild->m_pPeer;
- return pLastChild;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Adds a subkey. Make sure the subkey isn't a child of some other keyvalues
-// Input : *pSubKey -
-//-----------------------------------------------------------------------------
-void KeyValues::AddSubKey(KeyValues* pSubkey)
-{
- // Make sure the subkey isn't a child of some other keyvalues
- assert(pSubkey != nullptr);
- assert(pSubkey->m_pPeer == nullptr);
-
- // add into subkey list
- if (m_pSub == nullptr)
- {
- m_pSub = pSubkey;
- }
- else
- {
- KeyValues* pTempDat = m_pSub;
- while (pTempDat->GetNextKey() != nullptr)
- {
- pTempDat = pTempDat->GetNextKey();
- }
-
- pTempDat->SetNextKey(pSubkey);
- }
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Remove a subkey from the list
-// Input : *pSubKey -
-//-----------------------------------------------------------------------------
-void KeyValues::RemoveSubKey(KeyValues* pSubKey)
-{
- if (!pSubKey)
- return;
-
- // check the list pointer
- if (m_pSub == pSubKey)
- {
- m_pSub = pSubKey->m_pPeer;
- }
- else
- {
- // look through the list
- KeyValues* kv = m_pSub;
- while (kv->m_pPeer)
- {
- if (kv->m_pPeer == pSubKey)
- {
- kv->m_pPeer = pSubKey->m_pPeer;
- break;
- }
-
- kv = kv->m_pPeer;
- }
- }
-
- pSubKey->m_pPeer = nullptr;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Insert a subkey at index
-// Input : nIndex -
-// *pSubKey -
-//-----------------------------------------------------------------------------
-void KeyValues::InsertSubKey(int nIndex, KeyValues* pSubKey)
-{
- // Sub key must be valid and not part of another chain
- assert(pSubKey && pSubKey->m_pPeer == nullptr);
-
- if (nIndex == 0)
- {
- pSubKey->m_pPeer = m_pSub;
- m_pSub = pSubKey;
- return;
- }
- else
- {
- int nCurrentIndex = 0;
- for (KeyValues* pIter = GetFirstSubKey(); pIter != nullptr; pIter = pIter->GetNextKey())
- {
- ++nCurrentIndex;
- if (nCurrentIndex == nIndex)
- {
- pSubKey->m_pPeer = pIter->m_pPeer;
- pIter->m_pPeer = pSubKey;
- return;
- }
- }
- // Index is out of range if we get here
- assert(0);
- return;
- }
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Checks if key contains a subkey
-// Input : *pSubKey -
-// Output : true if contains, false otherwise
-//-----------------------------------------------------------------------------
-bool KeyValues::ContainsSubKey(KeyValues* pSubKey)
-{
- for (KeyValues* pIter = GetFirstSubKey(); pIter != nullptr; pIter = pIter->GetNextKey())
- {
- if (pSubKey == pIter)
- {
- return true;
- }
- }
- return false;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Swaps existing subkey with another
-// Input : *pExistingSubkey -
-// *pNewSubKey -
-//-----------------------------------------------------------------------------
-void KeyValues::SwapSubKey(KeyValues* pExistingSubkey, KeyValues* pNewSubKey)
-{
- assert(pExistingSubkey != nullptr && pNewSubKey != nullptr);
-
- // Make sure the new sub key isn't a child of some other keyvalues
- assert(pNewSubKey->m_pPeer == nullptr);
-
- // Check the list pointer
- if (m_pSub == pExistingSubkey)
- {
- pNewSubKey->m_pPeer = pExistingSubkey->m_pPeer;
- pExistingSubkey->m_pPeer = nullptr;
- m_pSub = pNewSubKey;
- }
- else
- {
- // Look through the list
- KeyValues* kv = m_pSub;
- while (kv->m_pPeer)
- {
- if (kv->m_pPeer == pExistingSubkey)
- {
- pNewSubKey->m_pPeer = pExistingSubkey->m_pPeer;
- pExistingSubkey->m_pPeer = nullptr;
- kv->m_pPeer = pNewSubKey;
- break;
- }
-
- kv = kv->m_pPeer;
- }
- // Existing sub key should always be found, otherwise it's a bug in the calling code.
- assert(kv->m_pPeer != nullptr);
- }
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Elides subkey
-// Input : *pSubKey -
-//-----------------------------------------------------------------------------
-void KeyValues::ElideSubKey(KeyValues* pSubKey)
-{
- // This pointer's "next" pointer needs to be fixed up when we elide the key
- KeyValues** ppPointerToFix = &m_pSub;
- for (KeyValues* pKeyIter = m_pSub; pKeyIter != nullptr; ppPointerToFix = &pKeyIter->m_pPeer, pKeyIter = pKeyIter->GetNextKey())
- {
- if (pKeyIter == pSubKey)
- {
- if (pSubKey->m_pSub == nullptr)
- {
- // No children, simply remove the key
- *ppPointerToFix = pSubKey->m_pPeer;
- delete pSubKey;
- }
- else
- {
- *ppPointerToFix = pSubKey->m_pSub;
- // Attach the remainder of this chain to the last child of pSubKey
- KeyValues* pChildIter = pSubKey->m_pSub;
- while (pChildIter->m_pPeer != nullptr)
- {
- pChildIter = pChildIter->m_pPeer;
- }
- // Now points to the last child of pSubKey
- pChildIter->m_pPeer = pSubKey->m_pPeer;
- // Detach the node to be elided
- pSubKey->m_pSub = nullptr;
- pSubKey->m_pPeer = nullptr;
- delete pSubKey;
- }
- return;
- }
- }
- // Key not found; that's caller error.
- assert(0);
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Check if a keyName has no value assigned to it.
-// Input : *pszKeyName -
-// Output : true on success, false otherwise
-//-----------------------------------------------------------------------------
-bool KeyValues::IsEmpty(const char* pszKeyName)
-{
- KeyValues* pKey = FindKey(pszKeyName, false);
- if (!pKey)
- return true;
-
- if (pKey->m_iDataType == TYPE_NONE && pKey->m_pSub == nullptr)
- return true;
-
- return false;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: gets the first true sub key
-// Output : *KeyValues
-//-----------------------------------------------------------------------------
-KeyValues* KeyValues::GetFirstTrueSubKey(void) const
-{
- assert(this, "Member function called on NULL KeyValues");
- KeyValues* pRet = this ? m_pSub : nullptr;
- while (pRet && pRet->m_iDataType != TYPE_NONE)
- pRet = pRet->m_pPeer;
-
- return pRet;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: gets the next true sub key
-// Output : *KeyValues
-//-----------------------------------------------------------------------------
-KeyValues* KeyValues::GetNextTrueSubKey(void) const
-{
- assert(this, "Member function called on NULL KeyValues");
- KeyValues* pRet = this ? m_pPeer : nullptr;
- while (pRet && pRet->m_iDataType != TYPE_NONE)
- pRet = pRet->m_pPeer;
-
- return pRet;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: gets the first value
-// Output : *KeyValues
-//-----------------------------------------------------------------------------
-KeyValues* KeyValues::GetFirstValue(void) const
-{
- assert(this, "Member function called on NULL KeyValues");
- KeyValues* pRet = this ? m_pSub : nullptr;
- while (pRet && pRet->m_iDataType == TYPE_NONE)
- pRet = pRet->m_pPeer;
-
- return pRet;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: gets the next value
-// Output : *KeyValues
-//-----------------------------------------------------------------------------
-KeyValues* KeyValues::GetNextValue(void) const
-{
- assert(this, "Member function called on NULL KeyValues");
- KeyValues* pRet = this ? m_pPeer : nullptr;
- while (pRet && pRet->m_iDataType == TYPE_NONE)
- pRet = pRet->m_pPeer;
-
- return pRet;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Return the first subkey in the list
-//-----------------------------------------------------------------------------
-KeyValues* KeyValues::GetFirstSubKey() const
-{
- assert(this, "Member function called on NULL KeyValues");
- return this ? m_pSub : nullptr;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Return the next subkey
-//-----------------------------------------------------------------------------
-KeyValues* KeyValues::GetNextKey() const
-{
- assert(this, "Member function called on NULL KeyValues");
- return this ? m_pPeer : nullptr;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Get the name of the current key section
-// Output : const char*
-//-----------------------------------------------------------------------------
-const char* KeyValues::GetName(void) const
-{
- return KeyValuesSystem()->m_pVtable->GetStringForSymbol(
- KeyValuesSystem(), MAKE_3_BYTES_FROM_1_AND_2(m_iKeyNameCaseSensitive1, m_iKeyNameCaseSensitive2));
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Get the integer value of a keyName. Default value is returned
-// if the keyName can't be found.
-// Input : *pszKeyName -
-// nDefaultValue -
-// Output : int
-//-----------------------------------------------------------------------------
-int KeyValues::GetInt(const char* pszKeyName, int iDefaultValue)
-{
- KeyValues* pKey = FindKey(pszKeyName, false);
- if (pKey)
- {
- switch (pKey->m_iDataType)
- {
- case TYPE_STRING:
- return atoi(pKey->m_sValue);
- case TYPE_WSTRING:
- return _wtoi(pKey->m_wsValue);
- case TYPE_FLOAT:
- return static_cast<int>(pKey->m_flValue);
- case TYPE_UINT64:
- // can't convert, since it would lose data
- assert(0);
- return 0;
- case TYPE_INT:
- case TYPE_PTR:
- default:
- return pKey->m_iValue;
- };
- }
- return iDefaultValue;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Get the integer value of a keyName. Default value is returned
-// if the keyName can't be found.
-// Input : *pszKeyName -
-// nDefaultValue -
-// Output : uint64_t
-//-----------------------------------------------------------------------------
-uint64_t KeyValues::GetUint64(const char* pszKeyName, uint64_t nDefaultValue)
-{
- KeyValues* pKey = FindKey(pszKeyName, false);
- if (pKey)
- {
- switch (pKey->m_iDataType)
- {
- case TYPE_STRING:
- {
- uint64_t uiResult = 0ull;
- sscanf(pKey->m_sValue, "%lld", &uiResult);
- return uiResult;
- }
- case TYPE_WSTRING:
- {
- uint64_t uiResult = 0ull;
- swscanf(pKey->m_wsValue, L"%lld", &uiResult);
- return uiResult;
- }
- case TYPE_FLOAT:
- return static_cast<int>(pKey->m_flValue);
- case TYPE_UINT64:
- return *reinterpret_cast<uint64_t*>(pKey->m_sValue);
- case TYPE_PTR:
- return static_cast<uint64_t>(reinterpret_cast<uintptr_t>(pKey->m_pValue));
- case TYPE_INT:
- default:
- return pKey->m_iValue;
- };
- }
- return nDefaultValue;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Get the pointer value of a keyName. Default value is returned
-// if the keyName can't be found.
-// Input : *pszKeyName -
-// pDefaultValue -
-// Output : void*
-//-----------------------------------------------------------------------------
-void* KeyValues::GetPtr(const char* pszKeyName, void* pDefaultValue)
-{
- KeyValues* pKey = FindKey(pszKeyName, false);
- if (pKey)
- {
- switch (pKey->m_iDataType)
- {
- case TYPE_PTR:
- return pKey->m_pValue;
-
- case TYPE_WSTRING:
- case TYPE_STRING:
- case TYPE_FLOAT:
- case TYPE_INT:
- case TYPE_UINT64:
- default:
- return nullptr;
- };
- }
- return pDefaultValue;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Get the float value of a keyName. Default value is returned
-// if the keyName can't be found.
-// Input : *pszKeyName -
-// flDefaultValue -
-// Output : float
-//-----------------------------------------------------------------------------
-float KeyValues::GetFloat(const char* pszKeyName, float flDefaultValue)
-{
- KeyValues* pKey = FindKey(pszKeyName, false);
- if (pKey)
- {
- switch (pKey->m_iDataType)
- {
- case TYPE_STRING:
- return static_cast<float>(atof(pKey->m_sValue));
- case TYPE_WSTRING:
- return static_cast<float>(_wtof(pKey->m_wsValue)); // no wtof
- case TYPE_FLOAT:
- return pKey->m_flValue;
- case TYPE_INT:
- return static_cast<float>(pKey->m_iValue);
- case TYPE_UINT64:
- return static_cast<float>((*(reinterpret_cast<uint64_t*>(pKey->m_sValue))));
- case TYPE_PTR:
- default:
- return 0.0f;
- };
- }
- return flDefaultValue;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Get the string pointer of a keyName. Default value is returned
-// if the keyName can't be found.
-// // Input : *pszKeyName -
-// pszDefaultValue -
-// Output : const char*
-//-----------------------------------------------------------------------------
-const char* KeyValues::GetString(const char* pszKeyName, const char* pszDefaultValue)
-{
- KeyValues* pKey = FindKey(pszKeyName, false);
- if (pKey)
- {
- // convert the data to string form then return it
- char buf[64];
- switch (pKey->m_iDataType)
- {
- case TYPE_FLOAT:
- snprintf(buf, sizeof(buf), "%f", pKey->m_flValue);
- SetString(pszKeyName, buf);
- break;
- case TYPE_PTR:
- snprintf(buf, sizeof(buf), "%lld", reinterpret_cast<uint64_t>(pKey->m_pValue));
- SetString(pszKeyName, buf);
- break;
- case TYPE_INT:
- snprintf(buf, sizeof(buf), "%d", pKey->m_iValue);
- SetString(pszKeyName, buf);
- break;
- case TYPE_UINT64:
- snprintf(buf, sizeof(buf), "%lld", *(reinterpret_cast<uint64_t*>(pKey->m_sValue)));
- SetString(pszKeyName, buf);
- break;
- case TYPE_COLOR:
- snprintf(buf, sizeof(buf), "%d %d %d %d", pKey->m_Color[0], pKey->m_Color[1], pKey->m_Color[2], pKey->m_Color[3]);
- SetString(pszKeyName, buf);
- break;
-
- case TYPE_WSTRING:
- {
- // convert the string to char *, set it for future use, and return it
- char wideBuf[512];
- int result = V_UnicodeToUTF8(pKey->m_wsValue, wideBuf, 512);
- if (result)
- {
- // note: this will copy wideBuf
- SetString(pszKeyName, wideBuf);
- }
- else
- {
- return pszDefaultValue;
- }
- break;
- }
- case TYPE_STRING:
- break;
- default:
- return pszDefaultValue;
- };
-
- return pKey->m_sValue;
- }
- return pszDefaultValue;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Get the wide string pointer of a keyName. Default value is returned
-// if the keyName can't be found.
-// // Input : *pszKeyName -
-// pwszDefaultValue -
-// Output : const wchar_t*
-//-----------------------------------------------------------------------------
-const wchar_t* KeyValues::GetWString(const char* pszKeyName, const wchar_t* pwszDefaultValue)
-{
- KeyValues* pKey = FindKey(pszKeyName, false);
- if (pKey)
- {
- wchar_t wbuf[64];
- switch (pKey->m_iDataType)
- {
- case TYPE_FLOAT:
- swprintf(wbuf, ARRAYSIZE(wbuf), L"%f", pKey->m_flValue);
- SetWString(pszKeyName, wbuf);
- break;
- case TYPE_PTR:
- swprintf(wbuf, ARRAYSIZE(wbuf), L"%lld", static_cast<int64_t>(reinterpret_cast<size_t>(pKey->m_pValue)));
- SetWString(pszKeyName, wbuf);
- break;
- case TYPE_INT:
- swprintf(wbuf, ARRAYSIZE(wbuf), L"%d", pKey->m_iValue);
- SetWString(pszKeyName, wbuf);
- break;
- case TYPE_UINT64:
- {
- swprintf(wbuf, ARRAYSIZE(wbuf), L"%lld", *(reinterpret_cast<uint64_t*>(pKey->m_sValue)));
- SetWString(pszKeyName, wbuf);
- }
- break;
- case TYPE_COLOR:
- swprintf(wbuf, ARRAYSIZE(wbuf), L"%d %d %d %d", pKey->m_Color[0], pKey->m_Color[1], pKey->m_Color[2], pKey->m_Color[3]);
- SetWString(pszKeyName, wbuf);
- break;
-
- case TYPE_WSTRING:
- break;
- case TYPE_STRING:
- {
- size_t bufSize = strlen(pKey->m_sValue) + 1;
- wchar_t* pWBuf = new wchar_t[bufSize];
- int result = V_UTF8ToUnicode(pKey->m_sValue, pWBuf, static_cast<int>(bufSize * sizeof(wchar_t)));
- if (result >= 0) // may be a zero length string
- {
- SetWString(pszKeyName, pWBuf);
- delete[] pWBuf;
- }
- else
- {
- delete[] pWBuf;
- return pwszDefaultValue;
- }
-
- break;
- }
- default:
- return pwszDefaultValue;
- };
-
- return reinterpret_cast<const wchar_t*>(pKey->m_wsValue);
- }
- return pwszDefaultValue;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Gets a color
-// Input : *pszKeyName -
-// &defaultColor -
-// Output : Color
-//-----------------------------------------------------------------------------
-Color KeyValues::GetColor(const char* pszKeyName, const Color& defaultColor)
-{
- Color color = defaultColor;
- KeyValues* pKey = FindKey(pszKeyName, false);
- if (pKey)
- {
- if (pKey->m_iDataType == TYPE_COLOR)
- {
- color[0] = pKey->m_Color[0];
- color[1] = pKey->m_Color[1];
- color[2] = pKey->m_Color[2];
- color[3] = pKey->m_Color[3];
- }
- else if (pKey->m_iDataType == TYPE_FLOAT)
- {
- color[0] = static_cast<unsigned char>(pKey->m_flValue);
- }
- else if (pKey->m_iDataType == TYPE_INT)
- {
- color[0] = static_cast<unsigned char>(pKey->m_iValue);
- }
- else if (pKey->m_iDataType == TYPE_STRING)
- {
- // parse the colors out of the string
- float a = 0, b = 0, c = 0, d = 0;
- sscanf(pKey->m_sValue, "%f %f %f %f", &a, &b, &c, &d);
- color[0] = static_cast<unsigned char>(a);
- color[1] = static_cast<unsigned char>(b);
- color[2] = static_cast<unsigned char>(c);
- color[3] = static_cast<unsigned char>(d);
- }
- }
- return color;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Get the data type of the value stored in a keyName
-// Input : *pszKeyName -
-//-----------------------------------------------------------------------------
-KeyValuesTypes_t KeyValues::GetDataType(const char* pszKeyName)
-{
- KeyValues* pKey = FindKey(pszKeyName, false);
- if (pKey)
- return static_cast<KeyValuesTypes_t>(pKey->m_iDataType);
-
- return TYPE_NONE;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Get the data type of the value stored in this keyName
-//-----------------------------------------------------------------------------
-KeyValuesTypes_t KeyValues::GetDataType(void) const
-{
- return static_cast<KeyValuesTypes_t>(m_iDataType);
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Set the integer value of a keyName.
-// Input : *pszKeyName -
-// iValue -
-//-----------------------------------------------------------------------------
-void KeyValues::SetInt(const char* pszKeyName, int iValue)
-{
- KeyValues* pKey = FindKey(pszKeyName, true);
- if (pKey)
- {
- pKey->m_iValue = iValue;
- pKey->m_iDataType = TYPE_INT;
- }
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Set the integer value of a keyName.
-//-----------------------------------------------------------------------------
-void KeyValues::SetUint64(const char* pszKeyName, uint64_t nValue)
-{
- KeyValues* pKey = FindKey(pszKeyName, true);
-
- if (pKey)
- {
- // delete the old value
- delete[] pKey->m_sValue;
- // make sure we're not storing the WSTRING - as we're converting over to STRING
- delete[] pKey->m_wsValue;
- pKey->m_wsValue = nullptr;
-
- pKey->m_sValue = new char[sizeof(uint64_t)];
- *(reinterpret_cast<uint64_t*>(pKey->m_sValue)) = nValue;
- pKey->m_iDataType = TYPE_UINT64;
- }
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Set the float value of a keyName.
-// Input : *pszKeyName -
-// flValue -
-//-----------------------------------------------------------------------------
-void KeyValues::SetFloat(const char* pszKeyName, float flValue)
-{
- KeyValues* pKey = FindKey(pszKeyName, true);
- if (pKey)
- {
- pKey->m_flValue = flValue;
- pKey->m_iDataType = TYPE_FLOAT;
- }
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Set the name value of a keyName.
-// Input : *pszSetName -
-//-----------------------------------------------------------------------------
-void KeyValues::SetName(const char* pszSetName)
-{
- HKeySymbol hCaseSensitiveKeyName = INVALID_KEY_SYMBOL, hCaseInsensitiveKeyName = INVALID_KEY_SYMBOL;
- hCaseSensitiveKeyName =
- KeyValuesSystem()->m_pVtable->GetSymbolForStringCaseSensitive(KeyValuesSystem(), hCaseInsensitiveKeyName, pszSetName, false);
-
- m_iKeyName = hCaseInsensitiveKeyName;
- SPLIT_3_BYTES_INTO_1_AND_2(m_iKeyNameCaseSensitive1, m_iKeyNameCaseSensitive2, hCaseSensitiveKeyName);
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Set the pointer value of a keyName.
-// Input : *pszKeyName -
-// *pValue -
-//-----------------------------------------------------------------------------
-void KeyValues::SetPtr(const char* pszKeyName, void* pValue)
-{
- KeyValues* pKey = FindKey(pszKeyName, true);
-
- if (pKey)
- {
- pKey->m_pValue = pValue;
- pKey->m_iDataType = TYPE_PTR;
- }
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Set the string value (internal)
-// Input : *pszValue -
-//-----------------------------------------------------------------------------
-void KeyValues::SetStringValue(char const* pszValue)
-{
- // delete the old value
- delete[] m_sValue;
- // make sure we're not storing the WSTRING - as we're converting over to STRING
- delete[] m_wsValue;
- m_wsValue = nullptr;
-
- if (!pszValue)
- {
- // ensure a valid value
- pszValue = "";
- }
-
- // allocate memory for the new value and copy it in
- size_t len = strlen(pszValue);
- m_sValue = new char[len + 1];
- memcpy(m_sValue, pszValue, len + 1);
-
- m_iDataType = TYPE_STRING;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Sets this key's peer to the KeyValues passed in
-// Input : *pDat -
-//-----------------------------------------------------------------------------
-void KeyValues::SetNextKey(KeyValues* pDat)
-{
- m_pPeer = pDat;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Set the string value of a keyName.
-// Input : *pszKeyName -
-// *pszValue -
-//-----------------------------------------------------------------------------
-void KeyValues::SetString(const char* pszKeyName, const char* pszValue)
-{
- if (KeyValues* pKey = FindKey(pszKeyName, true))
- {
- pKey->SetStringValue(pszValue);
- }
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Set the string value of a keyName.
-// Input : *pszKeyName -
-// *pwszValue -
-//-----------------------------------------------------------------------------
-void KeyValues::SetWString(const char* pszKeyName, const wchar_t* pwszValue)
-{
- KeyValues* pKey = FindKey(pszKeyName, true);
- if (pKey)
- {
- // delete the old value
- delete[] pKey->m_wsValue;
- // make sure we're not storing the STRING - as we're converting over to WSTRING
- delete[] pKey->m_sValue;
- pKey->m_sValue = nullptr;
-
- if (!pwszValue)
- {
- // ensure a valid value
- pwszValue = L"";
- }
-
- // allocate memory for the new value and copy it in
- size_t len = wcslen(pwszValue);
- pKey->m_wsValue = new wchar_t[len + 1];
- memcpy(pKey->m_wsValue, pwszValue, (len + 1) * sizeof(wchar_t));
-
- pKey->m_iDataType = TYPE_WSTRING;
- }
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Sets a color
-// Input : *pszKeyName -
-// color -
-//-----------------------------------------------------------------------------
-void KeyValues::SetColor(const char* pszKeyName, Color color)
-{
- KeyValues* pKey = FindKey(pszKeyName, true);
-
- if (pKey)
- {
- pKey->m_iDataType = TYPE_COLOR;
- pKey->m_Color[0] = color[0];
- pKey->m_Color[1] = color[1];
- pKey->m_Color[2] = color[2];
- pKey->m_Color[3] = color[3];
- }
-}
-
-//-----------------------------------------------------------------------------
-// Purpose:
-// Input : &src -
-//-----------------------------------------------------------------------------
-void KeyValues::RecursiveCopyKeyValues(KeyValues& src)
-{
- // garymcthack - need to check this code for possible buffer overruns.
-
- m_iKeyName = src.m_iKeyName;
- m_iKeyNameCaseSensitive1 = src.m_iKeyNameCaseSensitive1;
- m_iKeyNameCaseSensitive2 = src.m_iKeyNameCaseSensitive2;
-
- if (!src.m_pSub)
- {
- m_iDataType = src.m_iDataType;
- char buf[256];
- switch (src.m_iDataType)
- {
- case TYPE_NONE:
- break;
- case TYPE_STRING:
- if (src.m_sValue)
- {
- size_t len = strlen(src.m_sValue) + 1;
- m_sValue = new char[len];
- strncpy(m_sValue, src.m_sValue, len);
- }
- break;
- case TYPE_INT:
- {
- m_iValue = src.m_iValue;
- snprintf(buf, sizeof(buf), "%d", m_iValue);
- size_t len = strlen(buf) + 1;
- m_sValue = new char[len];
- strncpy(m_sValue, buf, len);
- }
- break;
- case TYPE_FLOAT:
- {
- m_flValue = src.m_flValue;
- snprintf(buf, sizeof(buf), "%f", m_flValue);
- size_t len = strlen(buf) + 1;
- m_sValue = new char[len];
- strncpy(m_sValue, buf, len);
- }
- break;
- case TYPE_PTR:
- {
- m_pValue = src.m_pValue;
- }
- break;
- case TYPE_UINT64:
- {
- m_sValue = new char[sizeof(uint64_t)];
- memcpy(m_sValue, src.m_sValue, sizeof(uint64_t));
- }
- break;
- case TYPE_COLOR:
- {
- m_Color[0] = src.m_Color[0];
- m_Color[1] = src.m_Color[1];
- m_Color[2] = src.m_Color[2];
- m_Color[3] = src.m_Color[3];
- }
- break;
-
- default:
- {
- // do nothing . .what the heck is this?
- assert(0);
- }
- break;
- }
- }
-
- // Handle the immediate child
- if (src.m_pSub)
- {
- m_pSub = new KeyValues;
-
- m_pSub->Init();
- m_pSub->SetName(nullptr);
-
- m_pSub->RecursiveCopyKeyValues(*src.m_pSub);
- }
-
- // Handle the immediate peer
- if (src.m_pPeer)
- {
- m_pPeer = new KeyValues;
-
- m_pPeer->Init();
- m_pPeer->SetName(nullptr);
-
- m_pPeer->RecursiveCopyKeyValues(*src.m_pPeer);
- }
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Make a new copy of all subkeys, add them all to the passed-in keyvalues
-// Input : *pParent -
-//-----------------------------------------------------------------------------
-void KeyValues::CopySubkeys(KeyValues* pParent) const
-{
- // recursively copy subkeys
- // Also maintain ordering....
- KeyValues* pPrev = nullptr;
- for (KeyValues* pSub = m_pSub; pSub != nullptr; pSub = pSub->m_pPeer)
- {
- // take a copy of the subkey
- KeyValues* pKey = pSub->MakeCopy();
-
- // add into subkey list
- if (pPrev)
- {
- pPrev->m_pPeer = pKey;
- }
- else
- {
- pParent->m_pSub = pKey;
- }
- pKey->m_pPeer = nullptr;
- pPrev = pKey;
- }
-}
-
-//-----------------------------------------------------------------------------
-// Purpose: Makes a copy of the whole key-value pair set
-// Output : KeyValues*
-//-----------------------------------------------------------------------------
-KeyValues* KeyValues::MakeCopy(void) const
-{
- KeyValues* pNewKeyValue = new KeyValues;
-
- pNewKeyValue->Init();
- pNewKeyValue->SetName(GetName());
-
- // copy data
- pNewKeyValue->m_iDataType = m_iDataType;
- switch (m_iDataType)
- {
- case TYPE_STRING:
- {
- if (m_sValue)
- {
- size_t len = strlen(m_sValue);
- assert(!pNewKeyValue->m_sValue);
- pNewKeyValue->m_sValue = new char[len + 1];
- memcpy(pNewKeyValue->m_sValue, m_sValue, len + 1);
- }
- }
- break;
- case TYPE_WSTRING:
- {
- if (m_wsValue)
- {
- size_t len = wcslen(m_wsValue);
- pNewKeyValue->m_wsValue = new wchar_t[len + 1];
- memcpy(pNewKeyValue->m_wsValue, m_wsValue, len + 1 * sizeof(wchar_t));
- }
- }
- break;
-
- case TYPE_INT:
- pNewKeyValue->m_iValue = m_iValue;
- break;
-
- case TYPE_FLOAT:
- pNewKeyValue->m_flValue = m_flValue;
- break;
-
- case TYPE_PTR:
- pNewKeyValue->m_pValue = m_pValue;
- break;
-
- case TYPE_COLOR:
- pNewKeyValue->m_Color[0] = m_Color[0];
- pNewKeyValue->m_Color[1] = m_Color[1];
- pNewKeyValue->m_Color[2] = m_Color[2];
- pNewKeyValue->m_Color[3] = m_Color[3];
- break;
-
- case TYPE_UINT64:
- pNewKeyValue->m_sValue = new char[sizeof(uint64_t)];
- memcpy(pNewKeyValue->m_sValue, m_sValue, sizeof(uint64_t));
- break;
- };
-
- // recursively copy subkeys
- CopySubkeys(pNewKeyValue);
- return pNewKeyValue;
-}
-
-ON_DLL_LOAD("vstdlib.dll", KeyValues, (CModule module))
-{
- V_UTF8ToUnicode = module.GetExport("V_UTF8ToUnicode").As<int (*)(const char*, wchar_t*, int)>();
- V_UnicodeToUTF8 = module.GetExport("V_UnicodeToUTF8").As<int (*)(const wchar_t*, char*, int)>();
- KeyValuesSystem = module.GetExport("KeyValuesSystem").As<CKeyValuesSystem* (*)()>();
-}
-
-AUTOHOOK_INIT()
-
-// clang-format off
-AUTOHOOK(KeyValues__LoadFromBuffer, engine.dll + 0x426C30,
-char, __fastcall, (KeyValues* self, const char* pResourceName, const char* pBuffer, void* pFileSystem, void* a5, void* a6, int a7))
-// clang-format on
-{
- static void* pSavedFilesystemPtr = nullptr;
-
- // this is just to allow playlists to get a valid pFileSystem ptr for kv building, other functions that call this particular overload of
- // LoadFromBuffer seem to get called on network stuff exclusively not exactly sure what the address wanted here is, so just taking it
- // from a function call that always happens before playlists is loaded
-
- // note: would be better if we could serialize this to disk for playlists, as this method breaks saving playlists in demos
- if (pFileSystem != nullptr)
- pSavedFilesystemPtr = pFileSystem;
- if (!pFileSystem && !strcmp(pResourceName, "playlists"))
- pFileSystem = pSavedFilesystemPtr;
-
- return KeyValues__LoadFromBuffer(self, pResourceName, pBuffer, pFileSystem, a5, a6, a7);
-}
-
-ON_DLL_LOAD("engine.dll", EngineKeyValues, (CModule module))
-{
- AUTOHOOK_DISPATCH()
-}
+#include "pch.h" +#include "keyvalues.h" +#include <winnt.h> + +// implementation of the ConVar class +// heavily based on https://github.com/Mauler125/r5sdk/blob/master/r5dev/vpc/keyvalues.cpp + +typedef int HKeySymbol; +#define INVALID_KEY_SYMBOL (-1) + +#define MAKE_3_BYTES_FROM_1_AND_2(x1, x2) ((((uint16_t)x2) << 8) | (uint8_t)(x1)) +#define SPLIT_3_BYTES_INTO_1_AND_2(x1, x2, x3) \ + do \ + { \ + x1 = (uint8_t)(x3); \ + x2 = (uint16_t)((x3) >> 8); \ + } while (0) + +struct CKeyValuesSystem +{ + public: + struct __VTable + { + char pad0[8 * 3]; // 2 methods + HKeySymbol (*GetSymbolForString)(CKeyValuesSystem* self, const char* name, bool bCreate); + const char* (*GetStringForSymbol)(CKeyValuesSystem* self, HKeySymbol symbol); + char pad1[8 * 5]; + HKeySymbol (*GetSymbolForStringCaseSensitive)( + CKeyValuesSystem* self, HKeySymbol& hCaseInsensitiveSymbol, const char* name, bool bCreate); + }; + + const __VTable* m_pVtable; +}; + +int (*V_UTF8ToUnicode)(const char* pUTF8, wchar_t* pwchDest, int cubDestSizeInBytes); +int (*V_UnicodeToUTF8)(const wchar_t* pUnicode, char* pUTF8, int cubDestSizeInBytes); +CKeyValuesSystem* (*KeyValuesSystem)(); + +KeyValues::KeyValues() {} // default constructor for copying and such + +//----------------------------------------------------------------------------- +// Purpose: Constructor +// Input : *pszSetName - +//----------------------------------------------------------------------------- +KeyValues::KeyValues(const char* pszSetName) +{ + Init(); + SetName(pszSetName); +} + +//----------------------------------------------------------------------------- +// Purpose: Constructor +// Input : *pszSetName - +// *pszFirstKey - +// *pszFirstValue - +//----------------------------------------------------------------------------- +KeyValues::KeyValues(const char* pszSsetName, const char* pszFirstKey, const char* pszFirstValue) +{ + Init(); + SetName(pszSsetName); + SetString(pszFirstKey, pszFirstValue); +} + +//----------------------------------------------------------------------------- +// Purpose: Constructor +// Input : *pszSetName - +// *pszFirstKey - +// *pwszFirstValue - +//----------------------------------------------------------------------------- +KeyValues::KeyValues(const char* pszSetName, const char* pszFirstKey, const wchar_t* pwszFirstValue) +{ + Init(); + SetName(pszSetName); + SetWString(pszFirstKey, pwszFirstValue); +} + +//----------------------------------------------------------------------------- +// Purpose: Constructor +// Input : *pszSetName - +// *pszFirstKey - +// iFirstValue - +//----------------------------------------------------------------------------- +KeyValues::KeyValues(const char* pszSetName, const char* pszFirstKey, int iFirstValue) +{ + Init(); + SetName(pszSetName); + SetInt(pszFirstKey, iFirstValue); +} + +//----------------------------------------------------------------------------- +// Purpose: Constructor +// Input : *pszSetName - +// *pszFirstKey - +// *pszFirstValue - +// *pszSecondKey - +// *pszSecondValue - +//----------------------------------------------------------------------------- +KeyValues::KeyValues( + const char* pszSetName, const char* pszFirstKey, const char* pszFirstValue, const char* pszSecondKey, const char* pszSecondValue) +{ + Init(); + SetName(pszSetName); + SetString(pszFirstKey, pszFirstValue); + SetString(pszSecondKey, pszSecondValue); +} + +//----------------------------------------------------------------------------- +// Purpose: Constructor +// Input : *pszSetName - +// *pszFirstKey - +// iFirstValue - +// *pszSecondKey - +// iSecondValue - +//----------------------------------------------------------------------------- +KeyValues::KeyValues(const char* pszSetName, const char* pszFirstKey, int iFirstValue, const char* pszSecondKey, int iSecondValue) +{ + Init(); + SetName(pszSetName); + SetInt(pszFirstKey, iFirstValue); + SetInt(pszSecondKey, iSecondValue); +} + +//----------------------------------------------------------------------------- +// Purpose: Destructor +//----------------------------------------------------------------------------- +KeyValues::~KeyValues(void) +{ + RemoveEverything(); +} + +//----------------------------------------------------------------------------- +// Purpose: Initialize member variables +//----------------------------------------------------------------------------- +void KeyValues::Init(void) +{ + m_iKeyName = 0; + m_iKeyNameCaseSensitive1 = 0; + m_iKeyNameCaseSensitive2 = 0; + m_iDataType = TYPE_NONE; + + m_pSub = nullptr; + m_pPeer = nullptr; + m_pChain = nullptr; + + m_sValue = nullptr; + m_wsValue = nullptr; + m_pValue = nullptr; + + m_bHasEscapeSequences = 0; +} + +//----------------------------------------------------------------------------- +// Purpose: Clear out all subkeys, and the current value +//----------------------------------------------------------------------------- +void KeyValues::Clear(void) +{ + delete m_pSub; + m_pSub = nullptr; + m_iDataType = TYPE_NONE; +} + +//----------------------------------------------------------------------------- +// for backwards compat - we used to need this to force the free to run from the same DLL +// as the alloc +//----------------------------------------------------------------------------- +void KeyValues::DeleteThis(void) +{ + delete this; +} + +//----------------------------------------------------------------------------- +// Purpose: remove everything +//----------------------------------------------------------------------------- +void KeyValues::RemoveEverything(void) +{ + KeyValues* dat; + KeyValues* datNext = nullptr; + for (dat = m_pSub; dat != nullptr; dat = datNext) + { + datNext = dat->m_pPeer; + dat->m_pPeer = nullptr; + delete dat; + } + + for (dat = m_pPeer; dat && dat != this; dat = datNext) + { + datNext = dat->m_pPeer; + dat->m_pPeer = nullptr; + delete dat; + } + + delete[] m_sValue; + m_sValue = nullptr; + delete[] m_wsValue; + m_wsValue = nullptr; +} + +//----------------------------------------------------------------------------- +// Purpose: Find a keyValue, create it if it is not found. +// Set bCreate to true to create the key if it doesn't already exist +// (which ensures a valid pointer will be returned) +// Input : *pszKeyName - +// bCreate - +// Output : *KeyValues +//----------------------------------------------------------------------------- +KeyValues* KeyValues::FindKey(const char* pszKeyName, bool bCreate) +{ + assert_msg(this, "Member function called on NULL KeyValues"); + + if (!pszKeyName || !*pszKeyName) + return this; + + const char* pSubStr = strchr(pszKeyName, '/'); + + HKeySymbol iSearchStr = KeyValuesSystem()->m_pVtable->GetSymbolForString(KeyValuesSystem(), pszKeyName, bCreate); + if (iSearchStr == INVALID_KEY_SYMBOL) + { + // not found, couldn't possibly be in key value list + return nullptr; + } + + KeyValues* pLastKVs = nullptr; + KeyValues* pCurrentKVs; + // find the searchStr in the current peer list + for (pCurrentKVs = m_pSub; pCurrentKVs != NULL; pCurrentKVs = pCurrentKVs->m_pPeer) + { + pLastKVs = pCurrentKVs; // record the last item looked at (for if we need to append to the end of the list) + + // symbol compare + if (pLastKVs->m_iKeyName == (uint32_t)iSearchStr) + break; + } + + if (!pCurrentKVs && m_pChain) + pCurrentKVs = m_pChain->FindKey(pszKeyName, false); + + // make sure a key was found + if (!pCurrentKVs) + { + if (bCreate) + { + // we need to create a new key + pCurrentKVs = new KeyValues(pszKeyName); + // Assert(dat != NULL); + + // insert new key at end of list + if (pLastKVs) + pLastKVs->m_pPeer = pCurrentKVs; + else + m_pSub = pCurrentKVs; + + pCurrentKVs->m_pPeer = NULL; + + // a key graduates to be a submsg as soon as it's m_pSub is set + // this should be the only place m_pSub is set + m_iDataType = TYPE_NONE; + } + else + { + return NULL; + } + } + + // if we've still got a subStr we need to keep looking deeper in the tree + if (pSubStr) + { + // recursively chain down through the paths in the string + return pCurrentKVs->FindKey(pSubStr + 1, bCreate); + } + + return pCurrentKVs; +} + +//----------------------------------------------------------------------------- +// Purpose: Locate last child. Returns NULL if we have no children +// Output : *KeyValues +//----------------------------------------------------------------------------- +KeyValues* KeyValues::FindLastSubKey(void) const +{ + // No children? + if (m_pSub == nullptr) + return nullptr; + + // Scan for the last one + KeyValues* pLastChild = m_pSub; + while (pLastChild->m_pPeer) + pLastChild = pLastChild->m_pPeer; + return pLastChild; +} + +//----------------------------------------------------------------------------- +// Purpose: Adds a subkey. Make sure the subkey isn't a child of some other keyvalues +// Input : *pSubKey - +//----------------------------------------------------------------------------- +void KeyValues::AddSubKey(KeyValues* pSubkey) +{ + // Make sure the subkey isn't a child of some other keyvalues + assert(pSubkey != nullptr); + assert(pSubkey->m_pPeer == nullptr); + + // add into subkey list + if (m_pSub == nullptr) + { + m_pSub = pSubkey; + } + else + { + KeyValues* pTempDat = m_pSub; + while (pTempDat->GetNextKey() != nullptr) + { + pTempDat = pTempDat->GetNextKey(); + } + + pTempDat->SetNextKey(pSubkey); + } +} + +//----------------------------------------------------------------------------- +// Purpose: Remove a subkey from the list +// Input : *pSubKey - +//----------------------------------------------------------------------------- +void KeyValues::RemoveSubKey(KeyValues* pSubKey) +{ + if (!pSubKey) + return; + + // check the list pointer + if (m_pSub == pSubKey) + { + m_pSub = pSubKey->m_pPeer; + } + else + { + // look through the list + KeyValues* kv = m_pSub; + while (kv->m_pPeer) + { + if (kv->m_pPeer == pSubKey) + { + kv->m_pPeer = pSubKey->m_pPeer; + break; + } + + kv = kv->m_pPeer; + } + } + + pSubKey->m_pPeer = nullptr; +} + +//----------------------------------------------------------------------------- +// Purpose: Insert a subkey at index +// Input : nIndex - +// *pSubKey - +//----------------------------------------------------------------------------- +void KeyValues::InsertSubKey(int nIndex, KeyValues* pSubKey) +{ + // Sub key must be valid and not part of another chain + assert(pSubKey && pSubKey->m_pPeer == nullptr); + + if (nIndex == 0) + { + pSubKey->m_pPeer = m_pSub; + m_pSub = pSubKey; + return; + } + else + { + int nCurrentIndex = 0; + for (KeyValues* pIter = GetFirstSubKey(); pIter != nullptr; pIter = pIter->GetNextKey()) + { + ++nCurrentIndex; + if (nCurrentIndex == nIndex) + { + pSubKey->m_pPeer = pIter->m_pPeer; + pIter->m_pPeer = pSubKey; + return; + } + } + // Index is out of range if we get here + assert(0); + return; + } +} + +//----------------------------------------------------------------------------- +// Purpose: Checks if key contains a subkey +// Input : *pSubKey - +// Output : true if contains, false otherwise +//----------------------------------------------------------------------------- +bool KeyValues::ContainsSubKey(KeyValues* pSubKey) +{ + for (KeyValues* pIter = GetFirstSubKey(); pIter != nullptr; pIter = pIter->GetNextKey()) + { + if (pSubKey == pIter) + { + return true; + } + } + return false; +} + +//----------------------------------------------------------------------------- +// Purpose: Swaps existing subkey with another +// Input : *pExistingSubkey - +// *pNewSubKey - +//----------------------------------------------------------------------------- +void KeyValues::SwapSubKey(KeyValues* pExistingSubkey, KeyValues* pNewSubKey) +{ + assert(pExistingSubkey != nullptr && pNewSubKey != nullptr); + + // Make sure the new sub key isn't a child of some other keyvalues + assert(pNewSubKey->m_pPeer == nullptr); + + // Check the list pointer + if (m_pSub == pExistingSubkey) + { + pNewSubKey->m_pPeer = pExistingSubkey->m_pPeer; + pExistingSubkey->m_pPeer = nullptr; + m_pSub = pNewSubKey; + } + else + { + // Look through the list + KeyValues* kv = m_pSub; + while (kv->m_pPeer) + { + if (kv->m_pPeer == pExistingSubkey) + { + pNewSubKey->m_pPeer = pExistingSubkey->m_pPeer; + pExistingSubkey->m_pPeer = nullptr; + kv->m_pPeer = pNewSubKey; + break; + } + + kv = kv->m_pPeer; + } + // Existing sub key should always be found, otherwise it's a bug in the calling code. + assert(kv->m_pPeer != nullptr); + } +} + +//----------------------------------------------------------------------------- +// Purpose: Elides subkey +// Input : *pSubKey - +//----------------------------------------------------------------------------- +void KeyValues::ElideSubKey(KeyValues* pSubKey) +{ + // This pointer's "next" pointer needs to be fixed up when we elide the key + KeyValues** ppPointerToFix = &m_pSub; + for (KeyValues* pKeyIter = m_pSub; pKeyIter != nullptr; ppPointerToFix = &pKeyIter->m_pPeer, pKeyIter = pKeyIter->GetNextKey()) + { + if (pKeyIter == pSubKey) + { + if (pSubKey->m_pSub == nullptr) + { + // No children, simply remove the key + *ppPointerToFix = pSubKey->m_pPeer; + delete pSubKey; + } + else + { + *ppPointerToFix = pSubKey->m_pSub; + // Attach the remainder of this chain to the last child of pSubKey + KeyValues* pChildIter = pSubKey->m_pSub; + while (pChildIter->m_pPeer != nullptr) + { + pChildIter = pChildIter->m_pPeer; + } + // Now points to the last child of pSubKey + pChildIter->m_pPeer = pSubKey->m_pPeer; + // Detach the node to be elided + pSubKey->m_pSub = nullptr; + pSubKey->m_pPeer = nullptr; + delete pSubKey; + } + return; + } + } + // Key not found; that's caller error. + assert(0); +} + +//----------------------------------------------------------------------------- +// Purpose: Check if a keyName has no value assigned to it. +// Input : *pszKeyName - +// Output : true on success, false otherwise +//----------------------------------------------------------------------------- +bool KeyValues::IsEmpty(const char* pszKeyName) +{ + KeyValues* pKey = FindKey(pszKeyName, false); + if (!pKey) + return true; + + if (pKey->m_iDataType == TYPE_NONE && pKey->m_pSub == nullptr) + return true; + + return false; +} + +//----------------------------------------------------------------------------- +// Purpose: gets the first true sub key +// Output : *KeyValues +//----------------------------------------------------------------------------- +KeyValues* KeyValues::GetFirstTrueSubKey(void) const +{ + assert_msg(this, "Member function called on NULL KeyValues"); + KeyValues* pRet = this ? m_pSub : nullptr; + while (pRet && pRet->m_iDataType != TYPE_NONE) + pRet = pRet->m_pPeer; + + return pRet; +} + +//----------------------------------------------------------------------------- +// Purpose: gets the next true sub key +// Output : *KeyValues +//----------------------------------------------------------------------------- +KeyValues* KeyValues::GetNextTrueSubKey(void) const +{ + assert_msg(this, "Member function called on NULL KeyValues"); + KeyValues* pRet = this ? m_pPeer : nullptr; + while (pRet && pRet->m_iDataType != TYPE_NONE) + pRet = pRet->m_pPeer; + + return pRet; +} + +//----------------------------------------------------------------------------- +// Purpose: gets the first value +// Output : *KeyValues +//----------------------------------------------------------------------------- +KeyValues* KeyValues::GetFirstValue(void) const +{ + assert_msg(this, "Member function called on NULL KeyValues"); + KeyValues* pRet = this ? m_pSub : nullptr; + while (pRet && pRet->m_iDataType == TYPE_NONE) + pRet = pRet->m_pPeer; + + return pRet; +} + +//----------------------------------------------------------------------------- +// Purpose: gets the next value +// Output : *KeyValues +//----------------------------------------------------------------------------- +KeyValues* KeyValues::GetNextValue(void) const +{ + assert_msg(this, "Member function called on NULL KeyValues"); + KeyValues* pRet = this ? m_pPeer : nullptr; + while (pRet && pRet->m_iDataType == TYPE_NONE) + pRet = pRet->m_pPeer; + + return pRet; +} + +//----------------------------------------------------------------------------- +// Purpose: Return the first subkey in the list +//----------------------------------------------------------------------------- +KeyValues* KeyValues::GetFirstSubKey() const +{ + assert_msg(this, "Member function called on NULL KeyValues"); + return this ? m_pSub : nullptr; +} + +//----------------------------------------------------------------------------- +// Purpose: Return the next subkey +//----------------------------------------------------------------------------- +KeyValues* KeyValues::GetNextKey() const +{ + assert_msg(this, "Member function called on NULL KeyValues"); + return this ? m_pPeer : nullptr; +} + +//----------------------------------------------------------------------------- +// Purpose: Get the name of the current key section +// Output : const char* +//----------------------------------------------------------------------------- +const char* KeyValues::GetName(void) const +{ + return KeyValuesSystem()->m_pVtable->GetStringForSymbol( + KeyValuesSystem(), MAKE_3_BYTES_FROM_1_AND_2(m_iKeyNameCaseSensitive1, m_iKeyNameCaseSensitive2)); +} + +//----------------------------------------------------------------------------- +// Purpose: Get the integer value of a keyName. Default value is returned +// if the keyName can't be found. +// Input : *pszKeyName - +// nDefaultValue - +// Output : int +//----------------------------------------------------------------------------- +int KeyValues::GetInt(const char* pszKeyName, int iDefaultValue) +{ + KeyValues* pKey = FindKey(pszKeyName, false); + if (pKey) + { + switch (pKey->m_iDataType) + { + case TYPE_STRING: + return atoi(pKey->m_sValue); + case TYPE_WSTRING: + return _wtoi(pKey->m_wsValue); + case TYPE_FLOAT: + return static_cast<int>(pKey->m_flValue); + case TYPE_UINT64: + // can't convert, since it would lose data + assert(0); + return 0; + case TYPE_INT: + case TYPE_PTR: + default: + return pKey->m_iValue; + }; + } + return iDefaultValue; +} + +//----------------------------------------------------------------------------- +// Purpose: Get the integer value of a keyName. Default value is returned +// if the keyName can't be found. +// Input : *pszKeyName - +// nDefaultValue - +// Output : uint64_t +//----------------------------------------------------------------------------- +uint64_t KeyValues::GetUint64(const char* pszKeyName, uint64_t nDefaultValue) +{ + KeyValues* pKey = FindKey(pszKeyName, false); + if (pKey) + { + switch (pKey->m_iDataType) + { + case TYPE_STRING: + { + uint64_t uiResult = 0ull; + sscanf(pKey->m_sValue, "%lld", &uiResult); + return uiResult; + } + case TYPE_WSTRING: + { + uint64_t uiResult = 0ull; + swscanf(pKey->m_wsValue, L"%lld", &uiResult); + return uiResult; + } + case TYPE_FLOAT: + return static_cast<int>(pKey->m_flValue); + case TYPE_UINT64: + return *reinterpret_cast<uint64_t*>(pKey->m_sValue); + case TYPE_PTR: + return static_cast<uint64_t>(reinterpret_cast<uintptr_t>(pKey->m_pValue)); + case TYPE_INT: + default: + return pKey->m_iValue; + }; + } + return nDefaultValue; +} + +//----------------------------------------------------------------------------- +// Purpose: Get the pointer value of a keyName. Default value is returned +// if the keyName can't be found. +// Input : *pszKeyName - +// pDefaultValue - +// Output : void* +//----------------------------------------------------------------------------- +void* KeyValues::GetPtr(const char* pszKeyName, void* pDefaultValue) +{ + KeyValues* pKey = FindKey(pszKeyName, false); + if (pKey) + { + switch (pKey->m_iDataType) + { + case TYPE_PTR: + return pKey->m_pValue; + + case TYPE_WSTRING: + case TYPE_STRING: + case TYPE_FLOAT: + case TYPE_INT: + case TYPE_UINT64: + default: + return nullptr; + }; + } + return pDefaultValue; +} + +//----------------------------------------------------------------------------- +// Purpose: Get the float value of a keyName. Default value is returned +// if the keyName can't be found. +// Input : *pszKeyName - +// flDefaultValue - +// Output : float +//----------------------------------------------------------------------------- +float KeyValues::GetFloat(const char* pszKeyName, float flDefaultValue) +{ + KeyValues* pKey = FindKey(pszKeyName, false); + if (pKey) + { + switch (pKey->m_iDataType) + { + case TYPE_STRING: + return static_cast<float>(atof(pKey->m_sValue)); + case TYPE_WSTRING: + return static_cast<float>(_wtof(pKey->m_wsValue)); // no wtof + case TYPE_FLOAT: + return pKey->m_flValue; + case TYPE_INT: + return static_cast<float>(pKey->m_iValue); + case TYPE_UINT64: + return static_cast<float>((*(reinterpret_cast<uint64_t*>(pKey->m_sValue)))); + case TYPE_PTR: + default: + return 0.0f; + }; + } + return flDefaultValue; +} + +//----------------------------------------------------------------------------- +// Purpose: Get the string pointer of a keyName. Default value is returned +// if the keyName can't be found. +// // Input : *pszKeyName - +// pszDefaultValue - +// Output : const char* +//----------------------------------------------------------------------------- +const char* KeyValues::GetString(const char* pszKeyName, const char* pszDefaultValue) +{ + KeyValues* pKey = FindKey(pszKeyName, false); + if (pKey) + { + // convert the data to string form then return it + char buf[64]; + switch (pKey->m_iDataType) + { + case TYPE_FLOAT: + snprintf(buf, sizeof(buf), "%f", pKey->m_flValue); + SetString(pszKeyName, buf); + break; + case TYPE_PTR: + snprintf(buf, sizeof(buf), "%lld", reinterpret_cast<uint64_t>(pKey->m_pValue)); + SetString(pszKeyName, buf); + break; + case TYPE_INT: + snprintf(buf, sizeof(buf), "%d", pKey->m_iValue); + SetString(pszKeyName, buf); + break; + case TYPE_UINT64: + snprintf(buf, sizeof(buf), "%lld", *(reinterpret_cast<uint64_t*>(pKey->m_sValue))); + SetString(pszKeyName, buf); + break; + case TYPE_COLOR: + snprintf(buf, sizeof(buf), "%d %d %d %d", pKey->m_Color[0], pKey->m_Color[1], pKey->m_Color[2], pKey->m_Color[3]); + SetString(pszKeyName, buf); + break; + + case TYPE_WSTRING: + { + // convert the string to char *, set it for future use, and return it + char wideBuf[512]; + int result = V_UnicodeToUTF8(pKey->m_wsValue, wideBuf, 512); + if (result) + { + // note: this will copy wideBuf + SetString(pszKeyName, wideBuf); + } + else + { + return pszDefaultValue; + } + break; + } + case TYPE_STRING: + break; + default: + return pszDefaultValue; + }; + + return pKey->m_sValue; + } + return pszDefaultValue; +} + +//----------------------------------------------------------------------------- +// Purpose: Get the wide string pointer of a keyName. Default value is returned +// if the keyName can't be found. +// // Input : *pszKeyName - +// pwszDefaultValue - +// Output : const wchar_t* +//----------------------------------------------------------------------------- +const wchar_t* KeyValues::GetWString(const char* pszKeyName, const wchar_t* pwszDefaultValue) +{ + KeyValues* pKey = FindKey(pszKeyName, false); + if (pKey) + { + wchar_t wbuf[64]; + switch (pKey->m_iDataType) + { + case TYPE_FLOAT: + swprintf(wbuf, ARRAYSIZE(wbuf), L"%f", pKey->m_flValue); + SetWString(pszKeyName, wbuf); + break; + case TYPE_PTR: + swprintf(wbuf, ARRAYSIZE(wbuf), L"%lld", static_cast<int64_t>(reinterpret_cast<size_t>(pKey->m_pValue))); + SetWString(pszKeyName, wbuf); + break; + case TYPE_INT: + swprintf(wbuf, ARRAYSIZE(wbuf), L"%d", pKey->m_iValue); + SetWString(pszKeyName, wbuf); + break; + case TYPE_UINT64: + { + swprintf(wbuf, ARRAYSIZE(wbuf), L"%lld", *(reinterpret_cast<uint64_t*>(pKey->m_sValue))); + SetWString(pszKeyName, wbuf); + } + break; + case TYPE_COLOR: + swprintf(wbuf, ARRAYSIZE(wbuf), L"%d %d %d %d", pKey->m_Color[0], pKey->m_Color[1], pKey->m_Color[2], pKey->m_Color[3]); + SetWString(pszKeyName, wbuf); + break; + + case TYPE_WSTRING: + break; + case TYPE_STRING: + { + size_t bufSize = strlen(pKey->m_sValue) + 1; + wchar_t* pWBuf = new wchar_t[bufSize]; + int result = V_UTF8ToUnicode(pKey->m_sValue, pWBuf, static_cast<int>(bufSize * sizeof(wchar_t))); + if (result >= 0) // may be a zero length string + { + SetWString(pszKeyName, pWBuf); + delete[] pWBuf; + } + else + { + delete[] pWBuf; + return pwszDefaultValue; + } + + break; + } + default: + return pwszDefaultValue; + }; + + return reinterpret_cast<const wchar_t*>(pKey->m_wsValue); + } + return pwszDefaultValue; +} + +//----------------------------------------------------------------------------- +// Purpose: Gets a color +// Input : *pszKeyName - +// &defaultColor - +// Output : Color +//----------------------------------------------------------------------------- +Color KeyValues::GetColor(const char* pszKeyName, const Color& defaultColor) +{ + Color color = defaultColor; + KeyValues* pKey = FindKey(pszKeyName, false); + if (pKey) + { + if (pKey->m_iDataType == TYPE_COLOR) + { + color[0] = pKey->m_Color[0]; + color[1] = pKey->m_Color[1]; + color[2] = pKey->m_Color[2]; + color[3] = pKey->m_Color[3]; + } + else if (pKey->m_iDataType == TYPE_FLOAT) + { + color[0] = static_cast<unsigned char>(pKey->m_flValue); + } + else if (pKey->m_iDataType == TYPE_INT) + { + color[0] = static_cast<unsigned char>(pKey->m_iValue); + } + else if (pKey->m_iDataType == TYPE_STRING) + { + // parse the colors out of the string + float a = 0, b = 0, c = 0, d = 0; + sscanf(pKey->m_sValue, "%f %f %f %f", &a, &b, &c, &d); + color[0] = static_cast<unsigned char>(a); + color[1] = static_cast<unsigned char>(b); + color[2] = static_cast<unsigned char>(c); + color[3] = static_cast<unsigned char>(d); + } + } + return color; +} + +//----------------------------------------------------------------------------- +// Purpose: Get the data type of the value stored in a keyName +// Input : *pszKeyName - +//----------------------------------------------------------------------------- +KeyValuesTypes_t KeyValues::GetDataType(const char* pszKeyName) +{ + KeyValues* pKey = FindKey(pszKeyName, false); + if (pKey) + return static_cast<KeyValuesTypes_t>(pKey->m_iDataType); + + return TYPE_NONE; +} + +//----------------------------------------------------------------------------- +// Purpose: Get the data type of the value stored in this keyName +//----------------------------------------------------------------------------- +KeyValuesTypes_t KeyValues::GetDataType(void) const +{ + return static_cast<KeyValuesTypes_t>(m_iDataType); +} + +//----------------------------------------------------------------------------- +// Purpose: Set the integer value of a keyName. +// Input : *pszKeyName - +// iValue - +//----------------------------------------------------------------------------- +void KeyValues::SetInt(const char* pszKeyName, int iValue) +{ + KeyValues* pKey = FindKey(pszKeyName, true); + if (pKey) + { + pKey->m_iValue = iValue; + pKey->m_iDataType = TYPE_INT; + } +} + +//----------------------------------------------------------------------------- +// Purpose: Set the integer value of a keyName. +//----------------------------------------------------------------------------- +void KeyValues::SetUint64(const char* pszKeyName, uint64_t nValue) +{ + KeyValues* pKey = FindKey(pszKeyName, true); + + if (pKey) + { + // delete the old value + delete[] pKey->m_sValue; + // make sure we're not storing the WSTRING - as we're converting over to STRING + delete[] pKey->m_wsValue; + pKey->m_wsValue = nullptr; + + pKey->m_sValue = new char[sizeof(uint64_t)]; + *(reinterpret_cast<uint64_t*>(pKey->m_sValue)) = nValue; + pKey->m_iDataType = TYPE_UINT64; + } +} + +//----------------------------------------------------------------------------- +// Purpose: Set the float value of a keyName. +// Input : *pszKeyName - +// flValue - +//----------------------------------------------------------------------------- +void KeyValues::SetFloat(const char* pszKeyName, float flValue) +{ + KeyValues* pKey = FindKey(pszKeyName, true); + if (pKey) + { + pKey->m_flValue = flValue; + pKey->m_iDataType = TYPE_FLOAT; + } +} + +//----------------------------------------------------------------------------- +// Purpose: Set the name value of a keyName. +// Input : *pszSetName - +//----------------------------------------------------------------------------- +void KeyValues::SetName(const char* pszSetName) +{ + HKeySymbol hCaseSensitiveKeyName = INVALID_KEY_SYMBOL, hCaseInsensitiveKeyName = INVALID_KEY_SYMBOL; + hCaseSensitiveKeyName = + KeyValuesSystem()->m_pVtable->GetSymbolForStringCaseSensitive(KeyValuesSystem(), hCaseInsensitiveKeyName, pszSetName, false); + + m_iKeyName = hCaseInsensitiveKeyName; + SPLIT_3_BYTES_INTO_1_AND_2(m_iKeyNameCaseSensitive1, m_iKeyNameCaseSensitive2, hCaseSensitiveKeyName); +} + +//----------------------------------------------------------------------------- +// Purpose: Set the pointer value of a keyName. +// Input : *pszKeyName - +// *pValue - +//----------------------------------------------------------------------------- +void KeyValues::SetPtr(const char* pszKeyName, void* pValue) +{ + KeyValues* pKey = FindKey(pszKeyName, true); + + if (pKey) + { + pKey->m_pValue = pValue; + pKey->m_iDataType = TYPE_PTR; + } +} + +//----------------------------------------------------------------------------- +// Purpose: Set the string value (internal) +// Input : *pszValue - +//----------------------------------------------------------------------------- +void KeyValues::SetStringValue(char const* pszValue) +{ + // delete the old value + delete[] m_sValue; + // make sure we're not storing the WSTRING - as we're converting over to STRING + delete[] m_wsValue; + m_wsValue = nullptr; + + if (!pszValue) + { + // ensure a valid value + pszValue = ""; + } + + // allocate memory for the new value and copy it in + size_t len = strlen(pszValue); + m_sValue = new char[len + 1]; + memcpy(m_sValue, pszValue, len + 1); + + m_iDataType = TYPE_STRING; +} + +//----------------------------------------------------------------------------- +// Purpose: Sets this key's peer to the KeyValues passed in +// Input : *pDat - +//----------------------------------------------------------------------------- +void KeyValues::SetNextKey(KeyValues* pDat) +{ + m_pPeer = pDat; +} + +//----------------------------------------------------------------------------- +// Purpose: Set the string value of a keyName. +// Input : *pszKeyName - +// *pszValue - +//----------------------------------------------------------------------------- +void KeyValues::SetString(const char* pszKeyName, const char* pszValue) +{ + if (KeyValues* pKey = FindKey(pszKeyName, true)) + { + pKey->SetStringValue(pszValue); + } +} + +//----------------------------------------------------------------------------- +// Purpose: Set the string value of a keyName. +// Input : *pszKeyName - +// *pwszValue - +//----------------------------------------------------------------------------- +void KeyValues::SetWString(const char* pszKeyName, const wchar_t* pwszValue) +{ + KeyValues* pKey = FindKey(pszKeyName, true); + if (pKey) + { + // delete the old value + delete[] pKey->m_wsValue; + // make sure we're not storing the STRING - as we're converting over to WSTRING + delete[] pKey->m_sValue; + pKey->m_sValue = nullptr; + + if (!pwszValue) + { + // ensure a valid value + pwszValue = L""; + } + + // allocate memory for the new value and copy it in + size_t len = wcslen(pwszValue); + pKey->m_wsValue = new wchar_t[len + 1]; + memcpy(pKey->m_wsValue, pwszValue, (len + 1) * sizeof(wchar_t)); + + pKey->m_iDataType = TYPE_WSTRING; + } +} + +//----------------------------------------------------------------------------- +// Purpose: Sets a color +// Input : *pszKeyName - +// color - +//----------------------------------------------------------------------------- +void KeyValues::SetColor(const char* pszKeyName, Color color) +{ + KeyValues* pKey = FindKey(pszKeyName, true); + + if (pKey) + { + pKey->m_iDataType = TYPE_COLOR; + pKey->m_Color[0] = color[0]; + pKey->m_Color[1] = color[1]; + pKey->m_Color[2] = color[2]; + pKey->m_Color[3] = color[3]; + } +} + +//----------------------------------------------------------------------------- +// Purpose: +// Input : &src - +//----------------------------------------------------------------------------- +void KeyValues::RecursiveCopyKeyValues(KeyValues& src) +{ + // garymcthack - need to check this code for possible buffer overruns. + + m_iKeyName = src.m_iKeyName; + m_iKeyNameCaseSensitive1 = src.m_iKeyNameCaseSensitive1; + m_iKeyNameCaseSensitive2 = src.m_iKeyNameCaseSensitive2; + + if (!src.m_pSub) + { + m_iDataType = src.m_iDataType; + char buf[256]; + switch (src.m_iDataType) + { + case TYPE_NONE: + break; + case TYPE_STRING: + if (src.m_sValue) + { + size_t len = strlen(src.m_sValue) + 1; + m_sValue = new char[len]; + strncpy(m_sValue, src.m_sValue, len); + } + break; + case TYPE_INT: + { + m_iValue = src.m_iValue; + snprintf(buf, sizeof(buf), "%d", m_iValue); + size_t len = strlen(buf) + 1; + m_sValue = new char[len]; + strncpy(m_sValue, buf, len); + } + break; + case TYPE_FLOAT: + { + m_flValue = src.m_flValue; + snprintf(buf, sizeof(buf), "%f", m_flValue); + size_t len = strlen(buf) + 1; + m_sValue = new char[len]; + strncpy(m_sValue, buf, len); + } + break; + case TYPE_PTR: + { + m_pValue = src.m_pValue; + } + break; + case TYPE_UINT64: + { + m_sValue = new char[sizeof(uint64_t)]; + memcpy(m_sValue, src.m_sValue, sizeof(uint64_t)); + } + break; + case TYPE_COLOR: + { + m_Color[0] = src.m_Color[0]; + m_Color[1] = src.m_Color[1]; + m_Color[2] = src.m_Color[2]; + m_Color[3] = src.m_Color[3]; + } + break; + + default: + { + // do nothing . .what the heck is this? + assert(0); + } + break; + } + } + + // Handle the immediate child + if (src.m_pSub) + { + m_pSub = new KeyValues; + + m_pSub->Init(); + m_pSub->SetName(nullptr); + + m_pSub->RecursiveCopyKeyValues(*src.m_pSub); + } + + // Handle the immediate peer + if (src.m_pPeer) + { + m_pPeer = new KeyValues; + + m_pPeer->Init(); + m_pPeer->SetName(nullptr); + + m_pPeer->RecursiveCopyKeyValues(*src.m_pPeer); + } +} + +//----------------------------------------------------------------------------- +// Purpose: Make a new copy of all subkeys, add them all to the passed-in keyvalues +// Input : *pParent - +//----------------------------------------------------------------------------- +void KeyValues::CopySubkeys(KeyValues* pParent) const +{ + // recursively copy subkeys + // Also maintain ordering.... + KeyValues* pPrev = nullptr; + for (KeyValues* pSub = m_pSub; pSub != nullptr; pSub = pSub->m_pPeer) + { + // take a copy of the subkey + KeyValues* pKey = pSub->MakeCopy(); + + // add into subkey list + if (pPrev) + { + pPrev->m_pPeer = pKey; + } + else + { + pParent->m_pSub = pKey; + } + pKey->m_pPeer = nullptr; + pPrev = pKey; + } +} + +//----------------------------------------------------------------------------- +// Purpose: Makes a copy of the whole key-value pair set +// Output : KeyValues* +//----------------------------------------------------------------------------- +KeyValues* KeyValues::MakeCopy(void) const +{ + KeyValues* pNewKeyValue = new KeyValues; + + pNewKeyValue->Init(); + pNewKeyValue->SetName(GetName()); + + // copy data + pNewKeyValue->m_iDataType = m_iDataType; + switch (m_iDataType) + { + case TYPE_STRING: + { + if (m_sValue) + { + size_t len = strlen(m_sValue); + assert(!pNewKeyValue->m_sValue); + pNewKeyValue->m_sValue = new char[len + 1]; + memcpy(pNewKeyValue->m_sValue, m_sValue, len + 1); + } + } + break; + case TYPE_WSTRING: + { + if (m_wsValue) + { + size_t len = wcslen(m_wsValue); + pNewKeyValue->m_wsValue = new wchar_t[len + 1]; + memcpy(pNewKeyValue->m_wsValue, m_wsValue, len + 1 * sizeof(wchar_t)); + } + } + break; + + case TYPE_INT: + pNewKeyValue->m_iValue = m_iValue; + break; + + case TYPE_FLOAT: + pNewKeyValue->m_flValue = m_flValue; + break; + + case TYPE_PTR: + pNewKeyValue->m_pValue = m_pValue; + break; + + case TYPE_COLOR: + pNewKeyValue->m_Color[0] = m_Color[0]; + pNewKeyValue->m_Color[1] = m_Color[1]; + pNewKeyValue->m_Color[2] = m_Color[2]; + pNewKeyValue->m_Color[3] = m_Color[3]; + break; + + case TYPE_UINT64: + pNewKeyValue->m_sValue = new char[sizeof(uint64_t)]; + memcpy(pNewKeyValue->m_sValue, m_sValue, sizeof(uint64_t)); + break; + }; + + // recursively copy subkeys + CopySubkeys(pNewKeyValue); + return pNewKeyValue; +} + +ON_DLL_LOAD("vstdlib.dll", KeyValues, (CModule module)) +{ + V_UTF8ToUnicode = module.GetExport("V_UTF8ToUnicode").As<int (*)(const char*, wchar_t*, int)>(); + V_UnicodeToUTF8 = module.GetExport("V_UnicodeToUTF8").As<int (*)(const wchar_t*, char*, int)>(); + KeyValuesSystem = module.GetExport("KeyValuesSystem").As<CKeyValuesSystem* (*)()>(); +} + +AUTOHOOK_INIT() + +// clang-format off +AUTOHOOK(KeyValues__LoadFromBuffer, engine.dll + 0x426C30, +char, __fastcall, (KeyValues* self, const char* pResourceName, const char* pBuffer, void* pFileSystem, void* a5, void* a6, int a7)) +// clang-format on +{ + static void* pSavedFilesystemPtr = nullptr; + + // this is just to allow playlists to get a valid pFileSystem ptr for kv building, other functions that call this particular overload of + // LoadFromBuffer seem to get called on network stuff exclusively not exactly sure what the address wanted here is, so just taking it + // from a function call that always happens before playlists is loaded + + // note: would be better if we could serialize this to disk for playlists, as this method breaks saving playlists in demos + if (pFileSystem != nullptr) + pSavedFilesystemPtr = pFileSystem; + if (!pFileSystem && !strcmp(pResourceName, "playlists")) + pFileSystem = pSavedFilesystemPtr; + + return KeyValues__LoadFromBuffer(self, pResourceName, pBuffer, pFileSystem, a5, a6, a7); +} + +ON_DLL_LOAD("engine.dll", EngineKeyValues, (CModule module)) +{ + AUTOHOOK_DISPATCH() +} diff --git a/NorthstarDLL/keyvalues.h b/NorthstarDLL/shared/keyvalues.h index 3ea682d6..64ca0cc7 100644 --- a/NorthstarDLL/keyvalues.h +++ b/NorthstarDLL/shared/keyvalues.h @@ -1,134 +1,134 @@ -#pragma once
-#include "color.h"
-
-enum KeyValuesTypes_t : char
-{
- TYPE_NONE = 0x0,
- TYPE_STRING = 0x1,
- TYPE_INT = 0x2,
- TYPE_FLOAT = 0x3,
- TYPE_PTR = 0x4,
- TYPE_WSTRING = 0x5,
- TYPE_COLOR = 0x6,
- TYPE_UINT64 = 0x7,
- TYPE_COMPILED_INT_BYTE = 0x8,
- TYPE_COMPILED_INT_0 = 0x9,
- TYPE_COMPILED_INT_1 = 0xA,
- TYPE_NUMTYPES = 0xB,
-};
-
-enum MergeKeyValuesOp_t
-{
- MERGE_KV_ALL,
- MERGE_KV_UPDATE, // update values are copied into storage, adding new keys to storage or updating existing ones
- MERGE_KV_DELETE, // update values specify keys that get deleted from storage
- MERGE_KV_BORROW, // update values only update existing keys in storage, keys in update that do not exist in storage are discarded
-};
-
-//-----------------------------------------------------------------------------
-// Purpose: Simple recursive data access class
-// Used in vgui for message parameters and resource files
-// Destructor deletes all child KeyValues nodes
-// Data is stored in key (string names) - (string/int/float)value pairs called nodes.
-//
-// About KeyValues Text File Format:
-
-// It has 3 control characters '{', '}' and '"'. Names and values may be quoted or
-// not. The quote '"' character must not be used within name or values, only for
-// quoting whole tokens. You may use escape sequences wile parsing and add within a
-// quoted token a \" to add quotes within your name or token. When using Escape
-// Sequence the parser must now that by setting KeyValues::UsesEscapeSequences( true ),
-// which it's off by default. Non-quoted tokens ends with a whitespace, '{', '}' and '"'.
-// So you may use '{' and '}' within quoted tokens, but not for non-quoted tokens.
-// An open bracket '{' after a key name indicates a list of subkeys which is finished
-// with a closing bracket '}'. Subkeys use the same definitions recursively.
-// Whitespaces are space, return, newline and tabulator. Allowed Escape sequences
-// are \n, \t, \\, \n and \". The number character '#' is used for macro purposes
-// (eg #include), don't use it as first character in key names.
-//-----------------------------------------------------------------------------
-class KeyValues
-{
- private:
- KeyValues(); // for internal use only
-
- public:
- // Constructors/destructors
- KeyValues(const char* pszSetName);
- KeyValues(const char* pszSetName, const char* pszFirstKey, const char* pszFirstValue);
- KeyValues(const char* pszSetName, const char* pszFirstKey, const wchar_t* pwszFirstValue);
- KeyValues(const char* pszSetName, const char* pszFirstKey, int iFirstValue);
- KeyValues(
- const char* pszSetName, const char* pszFirstKey, const char* pszFirstValue, const char* pszSecondKey, const char* pszSecondValue);
- KeyValues(const char* pszSetName, const char* pszFirstKey, int iFirstValue, const char* pszSecondKey, int iSecondValue);
- ~KeyValues(void);
-
- void Init(void);
- void Clear(void);
- void DeleteThis(void);
- void RemoveEverything();
-
- KeyValues* FindKey(const char* pKeyName, bool bCreate = false);
- KeyValues* FindLastSubKey(void) const;
-
- void AddSubKey(KeyValues* pSubkey);
- void RemoveSubKey(KeyValues* pSubKey);
- void InsertSubKey(int nIndex, KeyValues* pSubKey);
- bool ContainsSubKey(KeyValues* pSubKey);
- void SwapSubKey(KeyValues* pExistingSubkey, KeyValues* pNewSubKey);
- void ElideSubKey(KeyValues* pSubKey);
-
- // Data access
- bool IsEmpty(const char* pszKeyName);
- KeyValues* GetFirstTrueSubKey(void) const;
- KeyValues* GetNextTrueSubKey(void) const;
- KeyValues* GetFirstValue(void) const;
- KeyValues* GetNextValue(void) const;
- KeyValues* GetFirstSubKey() const;
- KeyValues* GetNextKey() const;
- const char* GetName(void) const;
- int GetInt(const char* pszKeyName, int iDefaultValue);
- uint64_t GetUint64(const char* pszKeyName, uint64_t nDefaultValue);
- void* GetPtr(const char* pszKeyName, void* pDefaultValue);
- float GetFloat(const char* pszKeyName, float flDefaultValue);
- const char* GetString(const char* pszKeyName = nullptr, const char* pszDefaultValue = "");
- const wchar_t* GetWString(const char* pszKeyName = nullptr, const wchar_t* pwszDefaultValue = L"");
- Color GetColor(const char* pszKeyName, const Color& defaultColor);
- KeyValuesTypes_t GetDataType(const char* pszKeyName);
- KeyValuesTypes_t GetDataType(void) const;
-
- // Key writing
- void SetInt(const char* pszKeyName, int iValue);
- void SetUint64(const char* pszKeyName, uint64_t nValue);
- void SetPtr(const char* pszKeyName, void* pValue);
- void SetNextKey(KeyValues* pDat);
- void SetName(const char* pszName);
- void SetString(const char* pszKeyName, const char* pszValue);
- void SetWString(const char* pszKeyName, const wchar_t* pwszValue);
- void SetStringValue(char const* pszValue);
- void SetColor(const char* pszKeyName, Color color);
- void SetFloat(const char* pszKeyName, float flValue);
-
- void RecursiveCopyKeyValues(KeyValues& src);
- void CopySubkeys(KeyValues* pParent) const;
- KeyValues* MakeCopy(void) const;
-
- public:
- uint32_t m_iKeyName : 24; // 0x0000
- uint32_t m_iKeyNameCaseSensitive1 : 8; // 0x0003
- char* m_sValue; // 0x0008
- wchar_t* m_wsValue; // 0x0010
- union // 0x0018
- {
- int m_iValue;
- float m_flValue;
- void* m_pValue;
- unsigned char m_Color[4];
- };
- char m_szShortName[8]; // 0x0020
- char m_iDataType; // 0x0028
- char m_bHasEscapeSequences; // 0x0029
- uint16_t m_iKeyNameCaseSensitive2; // 0x002A
- KeyValues* m_pPeer; // 0x0030
- KeyValues* m_pSub; // 0x0038
- KeyValues* m_pChain; // 0x0040
-};
+#pragma once +#include "core/math/color.h" + +enum KeyValuesTypes_t : char +{ + TYPE_NONE = 0x0, + TYPE_STRING = 0x1, + TYPE_INT = 0x2, + TYPE_FLOAT = 0x3, + TYPE_PTR = 0x4, + TYPE_WSTRING = 0x5, + TYPE_COLOR = 0x6, + TYPE_UINT64 = 0x7, + TYPE_COMPILED_INT_BYTE = 0x8, + TYPE_COMPILED_INT_0 = 0x9, + TYPE_COMPILED_INT_1 = 0xA, + TYPE_NUMTYPES = 0xB, +}; + +enum MergeKeyValuesOp_t +{ + MERGE_KV_ALL, + MERGE_KV_UPDATE, // update values are copied into storage, adding new keys to storage or updating existing ones + MERGE_KV_DELETE, // update values specify keys that get deleted from storage + MERGE_KV_BORROW, // update values only update existing keys in storage, keys in update that do not exist in storage are discarded +}; + +//----------------------------------------------------------------------------- +// Purpose: Simple recursive data access class +// Used in vgui for message parameters and resource files +// Destructor deletes all child KeyValues nodes +// Data is stored in key (string names) - (string/int/float)value pairs called nodes. +// +// About KeyValues Text File Format: + +// It has 3 control characters '{', '}' and '"'. Names and values may be quoted or +// not. The quote '"' character must not be used within name or values, only for +// quoting whole tokens. You may use escape sequences wile parsing and add within a +// quoted token a \" to add quotes within your name or token. When using Escape +// Sequence the parser must now that by setting KeyValues::UsesEscapeSequences( true ), +// which it's off by default. Non-quoted tokens ends with a whitespace, '{', '}' and '"'. +// So you may use '{' and '}' within quoted tokens, but not for non-quoted tokens. +// An open bracket '{' after a key name indicates a list of subkeys which is finished +// with a closing bracket '}'. Subkeys use the same definitions recursively. +// Whitespaces are space, return, newline and tabulator. Allowed Escape sequences +// are \n, \t, \\, \n and \". The number character '#' is used for macro purposes +// (eg #include), don't use it as first character in key names. +//----------------------------------------------------------------------------- +class KeyValues +{ + private: + KeyValues(); // for internal use only + + public: + // Constructors/destructors + KeyValues(const char* pszSetName); + KeyValues(const char* pszSetName, const char* pszFirstKey, const char* pszFirstValue); + KeyValues(const char* pszSetName, const char* pszFirstKey, const wchar_t* pwszFirstValue); + KeyValues(const char* pszSetName, const char* pszFirstKey, int iFirstValue); + KeyValues( + const char* pszSetName, const char* pszFirstKey, const char* pszFirstValue, const char* pszSecondKey, const char* pszSecondValue); + KeyValues(const char* pszSetName, const char* pszFirstKey, int iFirstValue, const char* pszSecondKey, int iSecondValue); + ~KeyValues(void); + + void Init(void); + void Clear(void); + void DeleteThis(void); + void RemoveEverything(); + + KeyValues* FindKey(const char* pKeyName, bool bCreate = false); + KeyValues* FindLastSubKey(void) const; + + void AddSubKey(KeyValues* pSubkey); + void RemoveSubKey(KeyValues* pSubKey); + void InsertSubKey(int nIndex, KeyValues* pSubKey); + bool ContainsSubKey(KeyValues* pSubKey); + void SwapSubKey(KeyValues* pExistingSubkey, KeyValues* pNewSubKey); + void ElideSubKey(KeyValues* pSubKey); + + // Data access + bool IsEmpty(const char* pszKeyName); + KeyValues* GetFirstTrueSubKey(void) const; + KeyValues* GetNextTrueSubKey(void) const; + KeyValues* GetFirstValue(void) const; + KeyValues* GetNextValue(void) const; + KeyValues* GetFirstSubKey() const; + KeyValues* GetNextKey() const; + const char* GetName(void) const; + int GetInt(const char* pszKeyName, int iDefaultValue); + uint64_t GetUint64(const char* pszKeyName, uint64_t nDefaultValue); + void* GetPtr(const char* pszKeyName, void* pDefaultValue); + float GetFloat(const char* pszKeyName, float flDefaultValue); + const char* GetString(const char* pszKeyName = nullptr, const char* pszDefaultValue = ""); + const wchar_t* GetWString(const char* pszKeyName = nullptr, const wchar_t* pwszDefaultValue = L""); + Color GetColor(const char* pszKeyName, const Color& defaultColor); + KeyValuesTypes_t GetDataType(const char* pszKeyName); + KeyValuesTypes_t GetDataType(void) const; + + // Key writing + void SetInt(const char* pszKeyName, int iValue); + void SetUint64(const char* pszKeyName, uint64_t nValue); + void SetPtr(const char* pszKeyName, void* pValue); + void SetNextKey(KeyValues* pDat); + void SetName(const char* pszName); + void SetString(const char* pszKeyName, const char* pszValue); + void SetWString(const char* pszKeyName, const wchar_t* pwszValue); + void SetStringValue(char const* pszValue); + void SetColor(const char* pszKeyName, Color color); + void SetFloat(const char* pszKeyName, float flValue); + + void RecursiveCopyKeyValues(KeyValues& src); + void CopySubkeys(KeyValues* pParent) const; + KeyValues* MakeCopy(void) const; + + public: + uint32_t m_iKeyName : 24; // 0x0000 + uint32_t m_iKeyNameCaseSensitive1 : 8; // 0x0003 + char* m_sValue; // 0x0008 + wchar_t* m_wsValue; // 0x0010 + union // 0x0018 + { + int m_iValue; + float m_flValue; + void* m_pValue; + unsigned char m_Color[4]; + }; + char m_szShortName[8]; // 0x0020 + char m_iDataType; // 0x0028 + char m_bHasEscapeSequences; // 0x0029 + uint16_t m_iKeyNameCaseSensitive2; // 0x002A + KeyValues* m_pPeer; // 0x0030 + KeyValues* m_pSub; // 0x0038 + KeyValues* m_pChain; // 0x0040 +}; diff --git a/NorthstarDLL/maxplayers.cpp b/NorthstarDLL/shared/maxplayers.cpp index ece8d14b..ebb44341 100644 --- a/NorthstarDLL/maxplayers.cpp +++ b/NorthstarDLL/shared/maxplayers.cpp @@ -1,5 +1,5 @@ #include "pch.h" -#include "tier0.h" +#include "core/tier0.h" #include "maxplayers.h" AUTOHOOK_INIT() diff --git a/NorthstarDLL/maxplayers.h b/NorthstarDLL/shared/maxplayers.h index b251f6a6..b251f6a6 100644 --- a/NorthstarDLL/maxplayers.h +++ b/NorthstarDLL/shared/maxplayers.h diff --git a/NorthstarDLL/misccommands.cpp b/NorthstarDLL/shared/misccommands.cpp index fd17b884..ad8b2a32 100644 --- a/NorthstarDLL/misccommands.cpp +++ b/NorthstarDLL/shared/misccommands.cpp @@ -1,15 +1,15 @@ #include "pch.h" #include "misccommands.h" -#include "concommand.h" -#include "playlist.h" -#include "r2engine.h" -#include "r2client.h" -#include "tier0.h" -#include "hoststate.h" -#include "masterserver.h" -#include "modmanager.h" -#include "serverauthentication.h" -#include "squirrel.h" +#include "core/convar/concommand.h" +#include "shared/playlist.h" +#include "engine/r2engine.h" +#include "client/r2client.h" +#include "core/tier0.h" +#include "engine/hoststate.h" +#include "masterserver/masterserver.h" +#include "mods/modmanager.h" +#include "server/auth/serverauthentication.h" +#include "squirrel/squirrel.h" void ConCommand_force_newgame(const CCommand& arg) { diff --git a/NorthstarDLL/misccommands.h b/NorthstarDLL/shared/misccommands.h index 07a07fb3..07a07fb3 100644 --- a/NorthstarDLL/misccommands.h +++ b/NorthstarDLL/shared/misccommands.h diff --git a/NorthstarDLL/playlist.cpp b/NorthstarDLL/shared/playlist.cpp index 4f34dbb1..2fb856b3 100644 --- a/NorthstarDLL/playlist.cpp +++ b/NorthstarDLL/shared/playlist.cpp @@ -1,10 +1,10 @@ #include "pch.h" #include "playlist.h" -#include "concommand.h" -#include "convar.h" -#include "squirrel.h" -#include "hoststate.h" -#include "serverpresence.h" +#include "core/convar/concommand.h" +#include "core/convar/convar.h" +#include "squirrel/squirrel.h" +#include "engine/hoststate.h" +#include "server/serverpresence.h" AUTOHOOK_INIT() diff --git a/NorthstarDLL/playlist.h b/NorthstarDLL/shared/playlist.h index c77b37d9..c77b37d9 100644 --- a/NorthstarDLL/playlist.h +++ b/NorthstarDLL/shared/playlist.h diff --git a/NorthstarDLL/squirrel.cpp b/NorthstarDLL/squirrel/squirrel.cpp index 02ca651e..8dd93ed0 100644 --- a/NorthstarDLL/squirrel.cpp +++ b/NorthstarDLL/squirrel/squirrel.cpp @@ -1,10 +1,10 @@ #include "pch.h" #include "squirrel.h" -#include "concommand.h" -#include "modmanager.h" -#include "dedicated.h" -#include "r2engine.h" -#include "tier0.h" +#include "core/convar/concommand.h" +#include "mods/modmanager.h" +#include "dedicated/dedicated.h" +#include "engine/r2engine.h" +#include "core/tier0.h" #include <any> @@ -88,6 +88,18 @@ eSQReturnType SQReturnTypeFromString(const char* pReturnType) return eSQReturnType::Default; // previous default value } +ScriptContext ScriptContextFromString(std::string string) +{ + if (string == "UI") + return ScriptContext::UI; + if (string == "CLIENT") + return ScriptContext::CLIENT; + if (string == "SERVER") + return ScriptContext::SERVER; + else + return ScriptContext::INVALID; +} + const char* SQTypeNameFromID(int type) { switch (type) @@ -152,10 +164,13 @@ void AsyncCall_External(ScriptContext context, const char* func_name, SquirrelMe { case ScriptContext::CLIENT: g_pSquirrel<ScriptContext::CLIENT>->messageBuffer->push(message); + break; case ScriptContext::SERVER: g_pSquirrel<ScriptContext::SERVER>->messageBuffer->push(message); + break; case ScriptContext::UI: g_pSquirrel<ScriptContext::UI>->messageBuffer->push(message); + break; } } @@ -317,18 +332,19 @@ template <ScriptContext context> CSquirrelVM* __fastcall CreateNewVMHook(void* a return sqvm; } -template <ScriptContext context> void (*__fastcall DestroyVM)(void* a1, HSquirrelVM* sqvm); -template <ScriptContext context> void __fastcall DestroyVMHook(void* a1, HSquirrelVM* sqvm) +template <ScriptContext context> void (*__fastcall DestroyVM)(void* a1, CSquirrelVM* sqvm); +template <ScriptContext context> void __fastcall DestroyVMHook(void* a1, CSquirrelVM* sqvm) { ScriptContext realContext = context; // ui and client use the same function so we use this for prints - if (IsUIVM(context, sqvm)) + if (IsUIVM(context, sqvm->sqvm)) { realContext = ScriptContext::UI; g_pSquirrel<ScriptContext::UI>->VMDestroyed(); + DestroyVM<ScriptContext::CLIENT>(a1, sqvm); // If we pass UI here it crashes } else { - g_pSquirrel<context>->m_pSQVM = nullptr; // Fixes a race-like bug + g_pSquirrel<context>->VMDestroyed(); DestroyVM<context>(a1, sqvm); } @@ -514,40 +530,76 @@ template <ScriptContext context> void StubUnsafeSQFuncs() template <ScriptContext context> void SquirrelManager<context>::ProcessMessageBuffer() { - auto maybeMessage = messageBuffer->pop(); - if (!maybeMessage) + while (std::optional<SquirrelMessage> maybeMessage = messageBuffer->pop()) { - return; - } + SquirrelMessage message = maybeMessage.value(); + + SQObject functionobj {}; + int result = sq_getfunction(m_pSQVM->sqvm, message.functionName.c_str(), &functionobj, 0); + if (result != 0) // This func returns 0 on success for some reason + { + NS::log::squirrel_logger<context>()->error( + "ProcessMessageBuffer was unable to find function with name '{}'. Is it global?", message.functionName); + continue; + } - SquirrelMessage message = maybeMessage.value(); + pushobject(m_pSQVM->sqvm, &functionobj); // Push the function object + pushroottable(m_pSQVM->sqvm); - SQObject functionobj {}; - int result = sq_getfunction(m_pSQVM->sqvm, message.functionName.c_str(), &functionobj, 0); - if (result != 0) // This func returns 0 on success for some reason - { - spdlog::error( - "ProcessMessageBuffer was unable to find function with name '{}' on {}. Is it global?", - message.functionName, - GetContextName(context)); - return; + if (message.isExternal) + { + message.externalFunc(m_pSQVM->sqvm); + } + else + { + for (auto& v : message.args) + { + // Execute lambda to push arg to stack + v(); + } + } + + _call(m_pSQVM->sqvm, message.args.size()); } - pushobject(m_pSQVM->sqvm, &functionobj); // Push the function object - pushroottable(m_pSQVM->sqvm); - if (message.isExternal) +} + +ADD_SQFUNC( + "string", + NSGetCurrentModName, + "", + "Returns the mod name of the script running this function", + ScriptContext::UI | ScriptContext::CLIENT | ScriptContext::SERVER) +{ + int depth = g_pSquirrel<context>->getinteger(sqvm, 1); + if (auto mod = g_pSquirrel<context>->getcallingmod(sqvm, depth); mod == nullptr) { - message.externalFunc(m_pSQVM->sqvm); + g_pSquirrel<context>->raiseerror(sqvm, "NSGetModName was called from a non-mod script. This shouldn't be possible"); + return SQRESULT_ERROR; } else { - for (auto& v : message.args) - { - // Execute lambda to push arg to stack - v(); - } + g_pSquirrel<context>->pushstring(sqvm, mod->Name.c_str()); } + return SQRESULT_NOTNULL; +} - _call(m_pSQVM->sqvm, message.args.size()); +ADD_SQFUNC( + "string", + NSGetCallingModName, + "int depth = 0", + "Returns the mod name of the script running this function", + ScriptContext::UI | ScriptContext::CLIENT | ScriptContext::SERVER) +{ + int depth = g_pSquirrel<context>->getinteger(sqvm, 1); + if (auto mod = g_pSquirrel<context>->getcallingmod(sqvm, depth); mod == nullptr) + { + g_pSquirrel<context>->pushstring(sqvm, "Unknown"); + } + else + { + g_pSquirrel<context>->pushstring(sqvm, mod->Name.c_str()); + } + return SQRESULT_NOTNULL; } ON_DLL_LOAD_RELIESON("client.dll", ClientSquirrel, ConCommand, (CModule module)) @@ -626,6 +678,8 @@ ON_DLL_LOAD_RELIESON("client.dll", ClientSquirrel, ConCommand, (CModule module)) g_pSquirrel<ScriptContext::UI>->messageBuffer = g_pSquirrel<ScriptContext::CLIENT>->messageBuffer; g_pSquirrel<ScriptContext::CLIENT>->__sq_getfunction = module.Offset(0x572FB0).As<sq_getfunctionType>(); g_pSquirrel<ScriptContext::UI>->__sq_getfunction = g_pSquirrel<ScriptContext::CLIENT>->__sq_getfunction; + g_pSquirrel<ScriptContext::CLIENT>->__sq_stackinfos = module.Offset(0x35970).As<sq_stackinfosType>(); + g_pSquirrel<ScriptContext::UI>->__sq_stackinfos = g_pSquirrel<ScriptContext::CLIENT>->__sq_stackinfos; MAKEHOOK( module.Offset(0x108E0), @@ -707,6 +761,7 @@ ON_DLL_LOAD_RELIESON("server.dll", ServerSquirrel, ConCommand, (CModule module)) g_pSquirrel<ScriptContext::SERVER>->logger = NS::log::SCRIPT_SV; // Message buffer stuff g_pSquirrel<ScriptContext::SERVER>->__sq_getfunction = module.Offset(0x6C85).As<sq_getfunctionType>(); + g_pSquirrel<ScriptContext::SERVER>->__sq_stackinfos = module.Offset(0x35920).As<sq_stackinfosType>(); MAKEHOOK( module.Offset(0x1DD10), diff --git a/NorthstarDLL/squirrel.h b/NorthstarDLL/squirrel/squirrel.h index 65dd66c5..82825b3c 100644 --- a/NorthstarDLL/squirrel.h +++ b/NorthstarDLL/squirrel/squirrel.h @@ -2,7 +2,8 @@ #include "squirrelclasstypes.h" #include "squirrelautobind.h" -#include "vector.h" +#include "core/math/vector.h" +#include "mods/modmanager.h" // stolen from ttf2sdk: sqvm types typedef float SQFloat; @@ -36,6 +37,13 @@ const char* GetContextName_Short(ScriptContext context); eSQReturnType SQReturnTypeFromString(const char* pReturnType); const char* SQTypeNameFromID(const int iTypeId); +ScriptContext ScriptContextFromString(std::string string); + +namespace NS::log +{ + template <ScriptContext context> std::shared_ptr<spdlog::logger> squirrel_logger(); +}; // namespace NS::log + void schedule_call_external(ScriptContext context, const char* func_name, SquirrelMessage_External_Pop function); // This base class means that only the templated functions have to be rebuilt for each template instance @@ -88,6 +96,8 @@ class SquirrelManagerBase sq_getthisentityType __sq_getthisentity; sq_getobjectType __sq_getobject; + sq_stackinfosType __sq_stackinfos; + sq_createuserdataType __sq_createuserdata; sq_setuserdatatypeidType __sq_setuserdatatypeid; sq_getfunctionType __sq_getfunction; @@ -114,7 +124,7 @@ class SquirrelManagerBase return __sq_call(sqvm, args + 1, false, false); } - inline SQInteger raiseerror(HSquirrelVM* sqvm, const const SQChar* sError) + inline SQInteger raiseerror(HSquirrelVM* sqvm, const SQChar* sError) { return __sq_raiseerror(sqvm, sError); } @@ -220,6 +230,28 @@ class SquirrelManagerBase return __sq_getasset(sqvm, stackpos, result); } + inline long long sq_stackinfos(HSquirrelVM* sqvm, int level, SQStackInfos& out) + { + return __sq_stackinfos(sqvm, level, &out, sqvm->_callstacksize); + } + + inline Mod* getcallingmod(HSquirrelVM* sqvm, int depth = 0) + { + SQStackInfos stackInfo {}; + if (1 + depth >= sqvm->_callstacksize) + { + return nullptr; + } + sq_stackinfos(sqvm, 1 + depth, stackInfo); + std::string sourceName = stackInfo._sourceName; + std::replace(sourceName.begin(), sourceName.end(), '/', '\\'); + std::string filename = "scripts\\vscripts\\" + sourceName; + if (auto res = g_pModManager->m_ModFiles.find(filename); res != g_pModManager->m_ModFiles.end()) + { + return res->second.m_pOwningMod; + } + return nullptr; + } template <typename T> inline SQRESULT getuserdata(HSquirrelVM* sqvm, const SQInteger stackpos, T* data, uint64_t* typeId) { return __sq_getuserdata(sqvm, stackpos, (void**)data, typeId); // this sometimes crashes idk @@ -297,6 +329,7 @@ template <ScriptContext context> class SquirrelManager : public virtual Squirrel int result = sq_getfunction(m_pSQVM->sqvm, funcname, &functionobj, 0); if (result != 0) // This func returns 0 on success for some reason { + NS::log::squirrel_logger<context>()->error("Call was unable to find function with name '{}'. Is it global?", funcname); return SQRESULT_ERROR; } pushobject(m_pSQVM->sqvm, &functionobj); // Push the function object @@ -319,6 +352,7 @@ template <ScriptContext context> class SquirrelManager : public virtual Squirrel int result = sq_getfunction(m_pSQVM->sqvm, funcname, &functionobj, 0); if (result != 0) // This func returns 0 on success for some reason { + NS::log::squirrel_logger<context>()->error("Call was unable to find function with name '{}'. Is it global?", funcname); return SQRESULT_ERROR; } pushobject(m_pSQVM->sqvm, &functionobj); // Push the function object diff --git a/NorthstarDLL/squirrelautobind.cpp b/NorthstarDLL/squirrel/squirrelautobind.cpp index d5f42477..d5f42477 100644 --- a/NorthstarDLL/squirrelautobind.cpp +++ b/NorthstarDLL/squirrel/squirrelautobind.cpp diff --git a/NorthstarDLL/squirrelautobind.h b/NorthstarDLL/squirrel/squirrelautobind.h index 865479a1..865479a1 100644 --- a/NorthstarDLL/squirrelautobind.h +++ b/NorthstarDLL/squirrel/squirrelautobind.h diff --git a/NorthstarDLL/squirrelclasstypes.h b/NorthstarDLL/squirrel/squirrelclasstypes.h index e26bc8d0..efc80f15 100644 --- a/NorthstarDLL/squirrelclasstypes.h +++ b/NorthstarDLL/squirrel/squirrelclasstypes.h @@ -73,6 +73,7 @@ struct SQFuncRegistration enum class ScriptContext : int { + INVALID = -1, SERVER, CLIENT, UI, @@ -223,6 +224,8 @@ typedef SQFloat* (*sq_getvectorType)(HSquirrelVM* sqvm, SQInteger iStackpos); typedef SQBool (*sq_getthisentityType)(HSquirrelVM*, void** ppEntity); typedef void (*sq_getobjectType)(HSquirrelVM*, SQInteger iStackPos, SQObject* pOutObj); +typedef long long (*sq_stackinfosType)(HSquirrelVM* sqvm, int iLevel, SQStackInfos* pOutObj, int iCallStackSize); + // sq stack userpointer funcs typedef void* (*sq_createuserdataType)(HSquirrelVM* sqvm, SQInteger iSize); typedef SQRESULT (*sq_setuserdatatypeidType)(HSquirrelVM* sqvm, SQInteger iStackpos, uint64_t iTypeId); diff --git a/NorthstarDLL/squirreldatatypes.h b/NorthstarDLL/squirrel/squirreldatatypes.h index e9f88d08..b5025f6b 100644 --- a/NorthstarDLL/squirreldatatypes.h +++ b/NorthstarDLL/squirrel/squirreldatatypes.h @@ -251,7 +251,7 @@ struct alignas(8) HSquirrelVM void* pointer_28; CallInfo* ci; CallInfo* _callstack; - int _callsstacksize; + int _callstacksize; int _stackbase; SQObject* _stackOfCurrentFunction; SQSharedState* sharedState; @@ -275,7 +275,7 @@ struct alignas(8) HSquirrelVM int _nnativecalls; int _suspended; int _suspended_root; - int _callstacksize; + int _unk; int _suspended_target; int trapAmount; int _suspend_varargs; diff --git a/NorthstarDLL/printcommands.cpp b/NorthstarDLL/util/printcommands.cpp index 90af1575..5552c50c 100644 --- a/NorthstarDLL/printcommands.cpp +++ b/NorthstarDLL/util/printcommands.cpp @@ -1,7 +1,7 @@ #include "pch.h" -#include "printcommand.h" -#include "convar.h" -#include "concommand.h" +#include "printcommands.h" +#include "core/convar/convar.h" +#include "core/convar/concommand.h" void PrintCommandHelpDialogue(const ConCommandBase* command, const char* name) { diff --git a/NorthstarDLL/printcommand.h b/NorthstarDLL/util/printcommands.h index 6c3ef850..cb72e5cc 100644 --- a/NorthstarDLL/printcommand.h +++ b/NorthstarDLL/util/printcommands.h @@ -1,5 +1,5 @@ #pragma once -#include "concommand.h" +#include "core/convar/concommand.h" void PrintCommandHelpDialogue(const ConCommandBase* command, const char* name); void TryPrintCvarHelpForCommand(const char* pCommand); diff --git a/NorthstarDLL/printmaps.cpp b/NorthstarDLL/util/printmaps.cpp index c378daad..e0192d69 100644 --- a/NorthstarDLL/printmaps.cpp +++ b/NorthstarDLL/util/printmaps.cpp @@ -1,10 +1,10 @@ #include "pch.h" #include "printmaps.h" -#include "convar.h" -#include "concommand.h" -#include "modmanager.h" -#include "tier0.h" -#include "r2engine.h" +#include "core/convar/convar.h" +#include "core/convar/concommand.h" +#include "mods/modmanager.h" +#include "core/tier0.h" +#include "engine/r2engine.h" #include <filesystem> #include <regex> diff --git a/NorthstarDLL/printmaps.h b/NorthstarDLL/util/printmaps.h index b01761c0..b01761c0 100644 --- a/NorthstarDLL/printmaps.h +++ b/NorthstarDLL/util/printmaps.h diff --git a/NorthstarDLL/util/version.cpp b/NorthstarDLL/util/version.cpp new file mode 100644 index 00000000..8697b61f --- /dev/null +++ b/NorthstarDLL/util/version.cpp @@ -0,0 +1,96 @@ +#include "util/version.h" +#include "pch.h" +#include "ns_version.h" +#include "dedicated/dedicated.h" + +char version[16]; +char NSUserAgent[256]; + +void InitialiseVersion() +{ + constexpr int northstar_version[4] {NORTHSTAR_VERSION}; + int ua_len = 0; + + // We actually use the rightmost integer do determine whether or not we're a debug/dev build + // If it is set to 1, we are a dev build + // On github CI, we set this 1 to a 0 automatically as we replace the 0,0,0,1 with the real version number + if (northstar_version[3] == 1) + { + sprintf(version, "%d.%d.%d.%d+dev", northstar_version[0], northstar_version[1], northstar_version[2], northstar_version[3]); + ua_len += snprintf( + NSUserAgent + ua_len, + sizeof(NSUserAgent) - ua_len, + "R2Northstar/%d.%d.%d+dev", + northstar_version[0], + northstar_version[1], + northstar_version[2]); + } + else + { + sprintf(version, "%d.%d.%d.%d", northstar_version[0], northstar_version[1], northstar_version[2], northstar_version[3]); + ua_len += snprintf( + NSUserAgent + ua_len, + sizeof(NSUserAgent) - ua_len, + "R2Northstar/%d.%d.%d", + northstar_version[0], + northstar_version[1], + northstar_version[2]); + } + + if (IsDedicatedServer()) + ua_len += snprintf(NSUserAgent + ua_len, sizeof(NSUserAgent) - ua_len, " (Dedicated)"); + + // Add the host platform info to the user agent. + // + // note: ntdll will always be loaded + HMODULE ntdll = GetModuleHandleA("ntdll"); + if (ntdll) + { + // real win32 version info (i.e., ignore manifest) + DWORD(WINAPI * RtlGetVersion)(LPOSVERSIONINFOEXW); + *(FARPROC*)(&RtlGetVersion) = GetProcAddress(ntdll, "RtlGetVersion"); + + // wine version (7.0-rc1, 7.0, 7.11, etc) + const char*(CDECL * wine_get_version)(void); + *(FARPROC*)(&wine_get_version) = GetProcAddress(ntdll, "wine_get_version"); + + // human-readable build string (e.g., "wine-7.22 (Staging)") + const char*(CDECL * wine_get_build_id)(void); + *(FARPROC*)(&wine_get_build_id) = GetProcAddress(ntdll, "wine_get_build_id"); + + // uname sysname (Darwin, Linux, etc) and release (kernel version string) + void(CDECL * wine_get_host_version)(const char** sysname, const char** release); + *(FARPROC*)(&wine_get_host_version) = GetProcAddress(ntdll, "wine_get_host_version"); + + OSVERSIONINFOEXW osvi = {}; + const char *wine_version = NULL, *wine_build_id = NULL, *wine_sysname = NULL, *wine_release = NULL; + if (RtlGetVersion) + RtlGetVersion(&osvi); + if (wine_get_version) + wine_version = wine_get_version(); + if (wine_get_build_id) + wine_build_id = wine_get_build_id(); + if (wine_get_host_version) + wine_get_host_version(&wine_sysname, &wine_release); + + // windows version + if (osvi.dwMajorVersion) + ua_len += snprintf( + NSUserAgent + ua_len, + sizeof(NSUserAgent) - ua_len, + " Windows/%d.%d.%d", + osvi.dwMajorVersion, + osvi.dwMinorVersion, + osvi.dwBuildNumber); + + // wine version + if (wine_version && wine_build_id) + ua_len += snprintf(NSUserAgent + ua_len, sizeof(NSUserAgent) - ua_len, " Wine/%s (%s)", wine_version, wine_build_id); + + // wine host system version + if (wine_sysname && wine_release) + ua_len += snprintf(NSUserAgent + ua_len, sizeof(NSUserAgent) - ua_len, " %s/%s", wine_sysname, wine_release); + } + + return; +} diff --git a/NorthstarDLL/version.h b/NorthstarDLL/util/version.h index 261a4cf1..261a4cf1 100644 --- a/NorthstarDLL/version.h +++ b/NorthstarDLL/util/version.h diff --git a/NorthstarDLL/version.cpp b/NorthstarDLL/version.cpp deleted file mode 100644 index 3755e4c4..00000000 --- a/NorthstarDLL/version.cpp +++ /dev/null @@ -1,26 +0,0 @@ -#include "version.h" -#include "pch.h" -#include "ns_version.h" - -char version[16]; -char NSUserAgent[32]; - -void InitialiseVersion() -{ - constexpr int northstar_version[4] {NORTHSTAR_VERSION}; - - // We actually use the rightmost integer do determine whether or not we're a debug/dev build - // If it is set to 1, we are a dev build - // On github CI, we set this 1 to a 0 automatically as we replace the 0,0,0,1 with the real version number - if (northstar_version[3] == 1) - { - sprintf(version, "%d.%d.%d.%d+dev", northstar_version[0], northstar_version[1], northstar_version[2], northstar_version[3]); - sprintf(NSUserAgent, "R2Northstar/%d.%d.%d+dev", northstar_version[0], northstar_version[1], northstar_version[2]); - } - else - { - sprintf(version, "%d.%d.%d.%d", northstar_version[0], northstar_version[1], northstar_version[2], northstar_version[3]); - sprintf(NSUserAgent, "R2Northstar/%d.%d.%d", northstar_version[0], northstar_version[1], northstar_version[2]); - } - return; -} diff --git a/NorthstarLauncher/NorthstarLauncher.vcxproj b/NorthstarLauncher/NorthstarLauncher.vcxproj index b4c7845f..29ea7187 100644 --- a/NorthstarLauncher/NorthstarLauncher.vcxproj +++ b/NorthstarLauncher/NorthstarLauncher.vcxproj @@ -58,6 +58,7 @@ <ConformanceMode>true</ConformanceMode>
<LanguageStandard>stdcpp20</LanguageStandard>
<AdditionalOptions>/F8000000 %(AdditionalOptions)</AdditionalOptions>
+ <AdditionalIncludeDirectories>$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -79,6 +80,7 @@ <ConformanceMode>true</ConformanceMode>
<LanguageStandard>stdcpp20</LanguageStandard>
<AdditionalOptions>/F8000000 %(AdditionalOptions)</AdditionalOptions>
+ <AdditionalIncludeDirectories>$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -96,6 +98,41 @@ <ClCompile Include="main.cpp" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\include\rapidjson\allocators.h" />
+ <ClInclude Include="..\include\rapidjson\document.h" />
+ <ClInclude Include="..\include\rapidjson\encodedstream.h" />
+ <ClInclude Include="..\include\rapidjson\encodings.h" />
+ <ClInclude Include="..\include\rapidjson\error\en.h" />
+ <ClInclude Include="..\include\rapidjson\error\error.h" />
+ <ClInclude Include="..\include\rapidjson\filereadstream.h" />
+ <ClInclude Include="..\include\rapidjson\filewritestream.h" />
+ <ClInclude Include="..\include\rapidjson\fwd.h" />
+ <ClInclude Include="..\include\rapidjson\internal\biginteger.h" />
+ <ClInclude Include="..\include\rapidjson\internal\diyfp.h" />
+ <ClInclude Include="..\include\rapidjson\internal\dtoa.h" />
+ <ClInclude Include="..\include\rapidjson\internal\ieee754.h" />
+ <ClInclude Include="..\include\rapidjson\internal\itoa.h" />
+ <ClInclude Include="..\include\rapidjson\internal\meta.h" />
+ <ClInclude Include="..\include\rapidjson\internal\pow10.h" />
+ <ClInclude Include="..\include\rapidjson\internal\regex.h" />
+ <ClInclude Include="..\include\rapidjson\internal\stack.h" />
+ <ClInclude Include="..\include\rapidjson\internal\strfunc.h" />
+ <ClInclude Include="..\include\rapidjson\internal\strtod.h" />
+ <ClInclude Include="..\include\rapidjson\internal\swap.h" />
+ <ClInclude Include="..\include\rapidjson\istreamwrapper.h" />
+ <ClInclude Include="..\include\rapidjson\memorybuffer.h" />
+ <ClInclude Include="..\include\rapidjson\memorystream.h" />
+ <ClInclude Include="..\include\rapidjson\msinttypes\inttypes.h" />
+ <ClInclude Include="..\include\rapidjson\msinttypes\stdint.h" />
+ <ClInclude Include="..\include\rapidjson\ostreamwrapper.h" />
+ <ClInclude Include="..\include\rapidjson\pointer.h" />
+ <ClInclude Include="..\include\rapidjson\prettywriter.h" />
+ <ClInclude Include="..\include\rapidjson\rapidjson.h" />
+ <ClInclude Include="..\include\rapidjson\reader.h" />
+ <ClInclude Include="..\include\rapidjson\schema.h" />
+ <ClInclude Include="..\include\rapidjson\stream.h" />
+ <ClInclude Include="..\include\rapidjson\stringbuffer.h" />
+ <ClInclude Include="..\include\rapidjson\writer.h" />
<ClInclude Include="resource1.h" />
</ItemGroup>
<ItemGroup>
diff --git a/NorthstarLauncher/NorthstarLauncher.vcxproj.filters b/NorthstarLauncher/NorthstarLauncher.vcxproj.filters index 76b907bf..8751c13f 100644 --- a/NorthstarLauncher/NorthstarLauncher.vcxproj.filters +++ b/NorthstarLauncher/NorthstarLauncher.vcxproj.filters @@ -13,6 +13,21 @@ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier> <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions> </Filter> + <Filter Include="Header Files\include"> + <UniqueIdentifier>{edd42629-a0d5-42b0-88b3-6e63e04770b7}</UniqueIdentifier> + </Filter> + <Filter Include="Header Files\include\rapidjson"> + <UniqueIdentifier>{2afc4c90-5392-4487-bb44-ed261ad1c52c}</UniqueIdentifier> + </Filter> + <Filter Include="Header Files\include\rapidjson\internal"> + <UniqueIdentifier>{20ea1f52-8ae5-47e6-bd72-252c78ce192e}</UniqueIdentifier> + </Filter> + <Filter Include="Header Files\include\rapidjson\error"> + <UniqueIdentifier>{19fbc37e-7523-475a-84ee-6242e4b12b66}</UniqueIdentifier> + </Filter> + <Filter Include="Header Files\include\rapidjson\msinttypes"> + <UniqueIdentifier>{8f22e7e3-536a-4bc8-ab77-2c62a9b85075}</UniqueIdentifier> + </Filter> </ItemGroup> <ItemGroup> <ClCompile Include="main.cpp"> @@ -23,6 +38,111 @@ <ClInclude Include="resource1.h"> <Filter>Header Files</Filter> </ClInclude> + <ClInclude Include="..\include\rapidjson\allocators.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\document.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\encodedstream.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\encodings.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\filereadstream.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\filewritestream.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\fwd.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\istreamwrapper.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\memorybuffer.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\memorystream.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\ostreamwrapper.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\pointer.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\prettywriter.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\rapidjson.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\reader.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\schema.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\stream.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\stringbuffer.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\writer.h"> + <Filter>Header Files\include\rapidjson</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\internal\biginteger.h"> + <Filter>Header Files\include\rapidjson\internal</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\internal\diyfp.h"> + <Filter>Header Files\include\rapidjson\internal</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\internal\dtoa.h"> + <Filter>Header Files\include\rapidjson\internal</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\internal\ieee754.h"> + <Filter>Header Files\include\rapidjson\internal</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\internal\itoa.h"> + <Filter>Header Files\include\rapidjson\internal</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\internal\meta.h"> + <Filter>Header Files\include\rapidjson\internal</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\internal\pow10.h"> + <Filter>Header Files\include\rapidjson\internal</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\internal\regex.h"> + <Filter>Header Files\include\rapidjson\internal</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\internal\stack.h"> + <Filter>Header Files\include\rapidjson\internal</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\internal\strfunc.h"> + <Filter>Header Files\include\rapidjson\internal</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\internal\strtod.h"> + <Filter>Header Files\include\rapidjson\internal</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\internal\swap.h"> + <Filter>Header Files\include\rapidjson\internal</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\error\en.h"> + <Filter>Header Files\include\rapidjson\error</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\error\error.h"> + <Filter>Header Files\include\rapidjson\error</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\msinttypes\inttypes.h"> + <Filter>Header Files\include\rapidjson\msinttypes</Filter> + </ClInclude> + <ClInclude Include="..\include\rapidjson\msinttypes\stdint.h"> + <Filter>Header Files\include\rapidjson\msinttypes</Filter> + </ClInclude> </ItemGroup> <ItemGroup> <ResourceCompile Include="resources.rc"> diff --git a/R2Northstar.sln b/R2Northstar.sln index b66b0dcd..a89f687d 100644 --- a/R2Northstar.sln +++ b/R2Northstar.sln @@ -1,14 +1,11 @@ - Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 17 VisualStudioVersion = 17.0.32014.148 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Northstar", "NorthstarDLL\NorthstarDLL.vcxproj", "{CFAD2623-064F-453C-8196-79EE10292E32}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "NorthstarDLL", "NorthstarDLL\NorthstarDLL.vcxproj", "{CFAD2623-064F-453C-8196-79EE10292E32}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "NorthstarLauncher", "NorthstarLauncher\NorthstarLauncher.vcxproj", "{0EA82CB0-53FE-4D4C-96DF-47FA970513D0}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "loader_launcher_proxy", "loader_launcher_proxy\loader_launcher_proxy.vcxproj", "{F65C322D-66DF-4AF1-B650-70221DE334C0}" -EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "loader_wsock32_proxy", "loader_wsock32_proxy\loader_wsock32_proxy.vcxproj", "{CF55F3B5-F348-450A-9CCB-C269F21D629D}" EndProject Global @@ -25,10 +22,6 @@ Global {0EA82CB0-53FE-4D4C-96DF-47FA970513D0}.Debug|x64.Build.0 = Debug|x64 {0EA82CB0-53FE-4D4C-96DF-47FA970513D0}.Release|x64.ActiveCfg = Release|x64 {0EA82CB0-53FE-4D4C-96DF-47FA970513D0}.Release|x64.Build.0 = Release|x64 - {F65C322D-66DF-4AF1-B650-70221DE334C0}.Debug|x64.ActiveCfg = Debug|x64 - {F65C322D-66DF-4AF1-B650-70221DE334C0}.Debug|x64.Build.0 = Debug|x64 - {F65C322D-66DF-4AF1-B650-70221DE334C0}.Release|x64.ActiveCfg = Release|x64 - {F65C322D-66DF-4AF1-B650-70221DE334C0}.Release|x64.Build.0 = Release|x64 {CF55F3B5-F348-450A-9CCB-C269F21D629D}.Debug|x64.ActiveCfg = Debug|x64 {CF55F3B5-F348-450A-9CCB-C269F21D629D}.Debug|x64.Build.0 = Debug|x64 {CF55F3B5-F348-450A-9CCB-C269F21D629D}.Release|x64.ActiveCfg = Release|x64 diff --git a/NorthstarDLL/include/MinHook.h b/include/MinHook.h index 15c0a875..15c0a875 100644 --- a/NorthstarDLL/include/MinHook.h +++ b/include/MinHook.h diff --git a/NorthstarDLL/include/MinHook.x64.lib b/include/MinHook.x64.lib Binary files differindex a346f386..a346f386 100644 --- a/NorthstarDLL/include/MinHook.x64.lib +++ b/include/MinHook.x64.lib diff --git a/NorthstarDLL/include/crypto/__DECC_INCLUDE_EPILOGUE.H b/include/crypto/__DECC_INCLUDE_EPILOGUE.H index e57c0eab..e57c0eab 100644 --- a/NorthstarDLL/include/crypto/__DECC_INCLUDE_EPILOGUE.H +++ b/include/crypto/__DECC_INCLUDE_EPILOGUE.H diff --git a/NorthstarDLL/include/crypto/__DECC_INCLUDE_PROLOGUE.H b/include/crypto/__DECC_INCLUDE_PROLOGUE.H index a0139575..a0139575 100644 --- a/NorthstarDLL/include/crypto/__DECC_INCLUDE_PROLOGUE.H +++ b/include/crypto/__DECC_INCLUDE_PROLOGUE.H diff --git a/NorthstarDLL/include/crypto/aes_platform.h b/include/crypto/aes_platform.h index e95ad5aa..e95ad5aa 100644 --- a/NorthstarDLL/include/crypto/aes_platform.h +++ b/include/crypto/aes_platform.h diff --git a/NorthstarDLL/include/crypto/aria.h b/include/crypto/aria.h index 21a9932e..21a9932e 100644 --- a/NorthstarDLL/include/crypto/aria.h +++ b/include/crypto/aria.h diff --git a/NorthstarDLL/include/crypto/asn1.h b/include/crypto/asn1.h index ec76ae6f..ec76ae6f 100644 --- a/NorthstarDLL/include/crypto/asn1.h +++ b/include/crypto/asn1.h diff --git a/NorthstarDLL/include/crypto/asn1_dsa.h b/include/crypto/asn1_dsa.h index 3eadb9ec..3eadb9ec 100644 --- a/NorthstarDLL/include/crypto/asn1_dsa.h +++ b/include/crypto/asn1_dsa.h diff --git a/NorthstarDLL/include/crypto/asn1err.h b/include/crypto/asn1err.h index 6441386b..6441386b 100644 --- a/NorthstarDLL/include/crypto/asn1err.h +++ b/include/crypto/asn1err.h diff --git a/NorthstarDLL/include/crypto/async.h b/include/crypto/async.h index 7bc0dbb6..7bc0dbb6 100644 --- a/NorthstarDLL/include/crypto/async.h +++ b/include/crypto/async.h diff --git a/NorthstarDLL/include/crypto/asyncerr.h b/include/crypto/asyncerr.h index 574e0af7..574e0af7 100644 --- a/NorthstarDLL/include/crypto/asyncerr.h +++ b/include/crypto/asyncerr.h diff --git a/NorthstarDLL/include/crypto/bioerr.h b/include/crypto/bioerr.h index a0c06099..a0c06099 100644 --- a/NorthstarDLL/include/crypto/bioerr.h +++ b/include/crypto/bioerr.h diff --git a/NorthstarDLL/include/crypto/bn.h b/include/crypto/bn.h index cf69bea8..cf69bea8 100644 --- a/NorthstarDLL/include/crypto/bn.h +++ b/include/crypto/bn.h diff --git a/NorthstarDLL/include/crypto/bn_conf.h b/include/crypto/bn_conf.h index a6f73d4a..a6f73d4a 100644 --- a/NorthstarDLL/include/crypto/bn_conf.h +++ b/include/crypto/bn_conf.h diff --git a/NorthstarDLL/include/crypto/bn_conf.h.in b/include/crypto/bn_conf.h.in index dbc901b1..dbc901b1 100644 --- a/NorthstarDLL/include/crypto/bn_conf.h.in +++ b/include/crypto/bn_conf.h.in diff --git a/NorthstarDLL/include/crypto/bn_dh.h b/include/crypto/bn_dh.h index 6d12c20e..6d12c20e 100644 --- a/NorthstarDLL/include/crypto/bn_dh.h +++ b/include/crypto/bn_dh.h diff --git a/NorthstarDLL/include/crypto/bn_srp.h b/include/crypto/bn_srp.h index 00b160aa..00b160aa 100644 --- a/NorthstarDLL/include/crypto/bn_srp.h +++ b/include/crypto/bn_srp.h diff --git a/NorthstarDLL/include/crypto/bnerr.h b/include/crypto/bnerr.h index 7282c915..7282c915 100644 --- a/NorthstarDLL/include/crypto/bnerr.h +++ b/include/crypto/bnerr.h diff --git a/NorthstarDLL/include/crypto/buffererr.h b/include/crypto/buffererr.h index 54976d95..54976d95 100644 --- a/NorthstarDLL/include/crypto/buffererr.h +++ b/include/crypto/buffererr.h diff --git a/NorthstarDLL/include/crypto/chacha.h b/include/crypto/chacha.h index d29998ff..d29998ff 100644 --- a/NorthstarDLL/include/crypto/chacha.h +++ b/include/crypto/chacha.h diff --git a/NorthstarDLL/include/crypto/cmll_platform.h b/include/crypto/cmll_platform.h index 8cadadf6..8cadadf6 100644 --- a/NorthstarDLL/include/crypto/cmll_platform.h +++ b/include/crypto/cmll_platform.h diff --git a/NorthstarDLL/include/crypto/cmperr.h b/include/crypto/cmperr.h index ac61dd48..ac61dd48 100644 --- a/NorthstarDLL/include/crypto/cmperr.h +++ b/include/crypto/cmperr.h diff --git a/NorthstarDLL/include/crypto/cmserr.h b/include/crypto/cmserr.h index 1de2f9c7..1de2f9c7 100644 --- a/NorthstarDLL/include/crypto/cmserr.h +++ b/include/crypto/cmserr.h diff --git a/NorthstarDLL/include/crypto/comperr.h b/include/crypto/comperr.h index 0fd9c6de..0fd9c6de 100644 --- a/NorthstarDLL/include/crypto/comperr.h +++ b/include/crypto/comperr.h diff --git a/NorthstarDLL/include/crypto/conferr.h b/include/crypto/conferr.h index cb367e4f..cb367e4f 100644 --- a/NorthstarDLL/include/crypto/conferr.h +++ b/include/crypto/conferr.h diff --git a/NorthstarDLL/include/crypto/crmferr.h b/include/crypto/crmferr.h index f1a27e04..f1a27e04 100644 --- a/NorthstarDLL/include/crypto/crmferr.h +++ b/include/crypto/crmferr.h diff --git a/NorthstarDLL/include/crypto/cryptlib.h b/include/crypto/cryptlib.h index 39a956bf..39a956bf 100644 --- a/NorthstarDLL/include/crypto/cryptlib.h +++ b/include/crypto/cryptlib.h diff --git a/NorthstarDLL/include/crypto/cryptoerr.h b/include/crypto/cryptoerr.h index 288b87ac..288b87ac 100644 --- a/NorthstarDLL/include/crypto/cryptoerr.h +++ b/include/crypto/cryptoerr.h diff --git a/NorthstarDLL/include/crypto/cterr.h b/include/crypto/cterr.h index 760bc796..760bc796 100644 --- a/NorthstarDLL/include/crypto/cterr.h +++ b/include/crypto/cterr.h diff --git a/NorthstarDLL/include/crypto/ctype.h b/include/crypto/ctype.h index a35c137e..a35c137e 100644 --- a/NorthstarDLL/include/crypto/ctype.h +++ b/include/crypto/ctype.h diff --git a/NorthstarDLL/include/crypto/decoder.h b/include/crypto/decoder.h index cc06ef29..cc06ef29 100644 --- a/NorthstarDLL/include/crypto/decoder.h +++ b/include/crypto/decoder.h diff --git a/NorthstarDLL/include/crypto/decodererr.h b/include/crypto/decodererr.h index d7badc43..d7badc43 100644 --- a/NorthstarDLL/include/crypto/decodererr.h +++ b/include/crypto/decodererr.h diff --git a/NorthstarDLL/include/crypto/des_platform.h b/include/crypto/des_platform.h index 07ea1ddd..07ea1ddd 100644 --- a/NorthstarDLL/include/crypto/des_platform.h +++ b/include/crypto/des_platform.h diff --git a/NorthstarDLL/include/crypto/dh.h b/include/crypto/dh.h index f6be4ae0..f6be4ae0 100644 --- a/NorthstarDLL/include/crypto/dh.h +++ b/include/crypto/dh.h diff --git a/NorthstarDLL/include/crypto/dherr.h b/include/crypto/dherr.h index bb24d131..bb24d131 100644 --- a/NorthstarDLL/include/crypto/dherr.h +++ b/include/crypto/dherr.h diff --git a/NorthstarDLL/include/crypto/dsa.h b/include/crypto/dsa.h index eedbd8c7..eedbd8c7 100644 --- a/NorthstarDLL/include/crypto/dsa.h +++ b/include/crypto/dsa.h diff --git a/NorthstarDLL/include/crypto/dsaerr.h b/include/crypto/dsaerr.h index 9898097d..9898097d 100644 --- a/NorthstarDLL/include/crypto/dsaerr.h +++ b/include/crypto/dsaerr.h diff --git a/NorthstarDLL/include/crypto/dso_conf.h b/include/crypto/dso_conf.h index 99514321..99514321 100644 --- a/NorthstarDLL/include/crypto/dso_conf.h +++ b/include/crypto/dso_conf.h diff --git a/NorthstarDLL/include/crypto/dso_conf.h.in b/include/crypto/dso_conf.h.in index 12de11ad..12de11ad 100644 --- a/NorthstarDLL/include/crypto/dso_conf.h.in +++ b/include/crypto/dso_conf.h.in diff --git a/NorthstarDLL/include/crypto/ec.h b/include/crypto/ec.h index 62163b31..62163b31 100644 --- a/NorthstarDLL/include/crypto/ec.h +++ b/include/crypto/ec.h diff --git a/NorthstarDLL/include/crypto/ecerr.h b/include/crypto/ecerr.h index 07b6c7aa..07b6c7aa 100644 --- a/NorthstarDLL/include/crypto/ecerr.h +++ b/include/crypto/ecerr.h diff --git a/NorthstarDLL/include/crypto/ecx.h b/include/crypto/ecx.h index 48b95fa5..48b95fa5 100644 --- a/NorthstarDLL/include/crypto/ecx.h +++ b/include/crypto/ecx.h diff --git a/NorthstarDLL/include/crypto/encoder.h b/include/crypto/encoder.h index 09d445d2..09d445d2 100644 --- a/NorthstarDLL/include/crypto/encoder.h +++ b/include/crypto/encoder.h diff --git a/NorthstarDLL/include/crypto/encodererr.h b/include/crypto/encodererr.h index 56c45823..56c45823 100644 --- a/NorthstarDLL/include/crypto/encodererr.h +++ b/include/crypto/encodererr.h diff --git a/NorthstarDLL/include/crypto/engine.h b/include/crypto/engine.h index fac6ed09..fac6ed09 100644 --- a/NorthstarDLL/include/crypto/engine.h +++ b/include/crypto/engine.h diff --git a/NorthstarDLL/include/crypto/engineerr.h b/include/crypto/engineerr.h index 737c841d..737c841d 100644 --- a/NorthstarDLL/include/crypto/engineerr.h +++ b/include/crypto/engineerr.h diff --git a/NorthstarDLL/include/crypto/err.h b/include/crypto/err.h index 15ec6fd0..15ec6fd0 100644 --- a/NorthstarDLL/include/crypto/err.h +++ b/include/crypto/err.h diff --git a/NorthstarDLL/include/crypto/ess.h b/include/crypto/ess.h index 7acde5f8..7acde5f8 100644 --- a/NorthstarDLL/include/crypto/ess.h +++ b/include/crypto/ess.h diff --git a/NorthstarDLL/include/crypto/esserr.h b/include/crypto/esserr.h index 8df2df11..8df2df11 100644 --- a/NorthstarDLL/include/crypto/esserr.h +++ b/include/crypto/esserr.h diff --git a/NorthstarDLL/include/crypto/evp.h b/include/crypto/evp.h index c5d3a930..c5d3a930 100644 --- a/NorthstarDLL/include/crypto/evp.h +++ b/include/crypto/evp.h diff --git a/NorthstarDLL/include/crypto/evperr.h b/include/crypto/evperr.h index d90ba83f..d90ba83f 100644 --- a/NorthstarDLL/include/crypto/evperr.h +++ b/include/crypto/evperr.h diff --git a/NorthstarDLL/include/crypto/httperr.h b/include/crypto/httperr.h index 969df17b..969df17b 100644 --- a/NorthstarDLL/include/crypto/httperr.h +++ b/include/crypto/httperr.h diff --git a/NorthstarDLL/include/crypto/lhash.h b/include/crypto/lhash.h index 0f64869f..0f64869f 100644 --- a/NorthstarDLL/include/crypto/lhash.h +++ b/include/crypto/lhash.h diff --git a/NorthstarDLL/include/crypto/md32_common.h b/include/crypto/md32_common.h index 3b16f1b7..3b16f1b7 100644 --- a/NorthstarDLL/include/crypto/md32_common.h +++ b/include/crypto/md32_common.h diff --git a/NorthstarDLL/include/crypto/modes.h b/include/crypto/modes.h index 19f9d859..19f9d859 100644 --- a/NorthstarDLL/include/crypto/modes.h +++ b/include/crypto/modes.h diff --git a/NorthstarDLL/include/crypto/objects.h b/include/crypto/objects.h index f22e9287..f22e9287 100644 --- a/NorthstarDLL/include/crypto/objects.h +++ b/include/crypto/objects.h diff --git a/NorthstarDLL/include/crypto/objectserr.h b/include/crypto/objectserr.h index ec994824..ec994824 100644 --- a/NorthstarDLL/include/crypto/objectserr.h +++ b/include/crypto/objectserr.h diff --git a/NorthstarDLL/include/crypto/ocsperr.h b/include/crypto/ocsperr.h index f9529b2a..f9529b2a 100644 --- a/NorthstarDLL/include/crypto/ocsperr.h +++ b/include/crypto/ocsperr.h diff --git a/NorthstarDLL/include/crypto/pem.h b/include/crypto/pem.h index 840dc18f..840dc18f 100644 --- a/NorthstarDLL/include/crypto/pem.h +++ b/include/crypto/pem.h diff --git a/NorthstarDLL/include/crypto/pemerr.h b/include/crypto/pemerr.h index b255ff5c..b255ff5c 100644 --- a/NorthstarDLL/include/crypto/pemerr.h +++ b/include/crypto/pemerr.h diff --git a/NorthstarDLL/include/crypto/pkcs12err.h b/include/crypto/pkcs12err.h index 662f412e..662f412e 100644 --- a/NorthstarDLL/include/crypto/pkcs12err.h +++ b/include/crypto/pkcs12err.h diff --git a/NorthstarDLL/include/crypto/pkcs7.h b/include/crypto/pkcs7.h index 9caa9af4..9caa9af4 100644 --- a/NorthstarDLL/include/crypto/pkcs7.h +++ b/include/crypto/pkcs7.h diff --git a/NorthstarDLL/include/crypto/pkcs7err.h b/include/crypto/pkcs7err.h index c195190b..c195190b 100644 --- a/NorthstarDLL/include/crypto/pkcs7err.h +++ b/include/crypto/pkcs7err.h diff --git a/NorthstarDLL/include/crypto/poly1305.h b/include/crypto/poly1305.h index ba54f3bd..ba54f3bd 100644 --- a/NorthstarDLL/include/crypto/poly1305.h +++ b/include/crypto/poly1305.h diff --git a/NorthstarDLL/include/crypto/ppc_arch.h b/include/crypto/ppc_arch.h index 3b3ce4bf..3b3ce4bf 100644 --- a/NorthstarDLL/include/crypto/ppc_arch.h +++ b/include/crypto/ppc_arch.h diff --git a/NorthstarDLL/include/crypto/punycode.h b/include/crypto/punycode.h index 133826d8..133826d8 100644 --- a/NorthstarDLL/include/crypto/punycode.h +++ b/include/crypto/punycode.h diff --git a/NorthstarDLL/include/crypto/rand.h b/include/crypto/rand.h index fa3b5b2b..fa3b5b2b 100644 --- a/NorthstarDLL/include/crypto/rand.h +++ b/include/crypto/rand.h diff --git a/NorthstarDLL/include/crypto/rand_pool.h b/include/crypto/rand_pool.h index f4d1d954..f4d1d954 100644 --- a/NorthstarDLL/include/crypto/rand_pool.h +++ b/include/crypto/rand_pool.h diff --git a/NorthstarDLL/include/crypto/randerr.h b/include/crypto/randerr.h index 832a8b7d..832a8b7d 100644 --- a/NorthstarDLL/include/crypto/randerr.h +++ b/include/crypto/randerr.h diff --git a/NorthstarDLL/include/crypto/rsa.h b/include/crypto/rsa.h index 100e7ceb..100e7ceb 100644 --- a/NorthstarDLL/include/crypto/rsa.h +++ b/include/crypto/rsa.h diff --git a/NorthstarDLL/include/crypto/rsaerr.h b/include/crypto/rsaerr.h index 9b23500b..9b23500b 100644 --- a/NorthstarDLL/include/crypto/rsaerr.h +++ b/include/crypto/rsaerr.h diff --git a/NorthstarDLL/include/crypto/security_bits.h b/include/crypto/security_bits.h index 58f49681..58f49681 100644 --- a/NorthstarDLL/include/crypto/security_bits.h +++ b/include/crypto/security_bits.h diff --git a/NorthstarDLL/include/crypto/sha.h b/include/crypto/sha.h index 64305d17..64305d17 100644 --- a/NorthstarDLL/include/crypto/sha.h +++ b/include/crypto/sha.h diff --git a/NorthstarDLL/include/crypto/siphash.h b/include/crypto/siphash.h index 0d0767fc..0d0767fc 100644 --- a/NorthstarDLL/include/crypto/siphash.h +++ b/include/crypto/siphash.h diff --git a/NorthstarDLL/include/crypto/siv.h b/include/crypto/siv.h index 8dc58bd3..8dc58bd3 100644 --- a/NorthstarDLL/include/crypto/siv.h +++ b/include/crypto/siv.h diff --git a/NorthstarDLL/include/crypto/sm2.h b/include/crypto/sm2.h index 9ab6c0b7..9ab6c0b7 100644 --- a/NorthstarDLL/include/crypto/sm2.h +++ b/include/crypto/sm2.h diff --git a/NorthstarDLL/include/crypto/sm2err.h b/include/crypto/sm2err.h index 706f4d69..706f4d69 100644 --- a/NorthstarDLL/include/crypto/sm2err.h +++ b/include/crypto/sm2err.h diff --git a/NorthstarDLL/include/crypto/sm4.h b/include/crypto/sm4.h index e21ec81c..e21ec81c 100644 --- a/NorthstarDLL/include/crypto/sm4.h +++ b/include/crypto/sm4.h diff --git a/NorthstarDLL/include/crypto/sparc_arch.h b/include/crypto/sparc_arch.h index 447e715b..447e715b 100644 --- a/NorthstarDLL/include/crypto/sparc_arch.h +++ b/include/crypto/sparc_arch.h diff --git a/NorthstarDLL/include/crypto/sparse_array.h b/include/crypto/sparse_array.h index 7ef74283..7ef74283 100644 --- a/NorthstarDLL/include/crypto/sparse_array.h +++ b/include/crypto/sparse_array.h diff --git a/NorthstarDLL/include/crypto/store.h b/include/crypto/store.h index 13d2646b..13d2646b 100644 --- a/NorthstarDLL/include/crypto/store.h +++ b/include/crypto/store.h diff --git a/NorthstarDLL/include/crypto/storeerr.h b/include/crypto/storeerr.h index c46d845f..c46d845f 100644 --- a/NorthstarDLL/include/crypto/storeerr.h +++ b/include/crypto/storeerr.h diff --git a/NorthstarDLL/include/crypto/tserr.h b/include/crypto/tserr.h index 2f34ba31..2f34ba31 100644 --- a/NorthstarDLL/include/crypto/tserr.h +++ b/include/crypto/tserr.h diff --git a/NorthstarDLL/include/crypto/types.h b/include/crypto/types.h index 0d814040..0d814040 100644 --- a/NorthstarDLL/include/crypto/types.h +++ b/include/crypto/types.h diff --git a/NorthstarDLL/include/crypto/uierr.h b/include/crypto/uierr.h index 789077a8..789077a8 100644 --- a/NorthstarDLL/include/crypto/uierr.h +++ b/include/crypto/uierr.h diff --git a/NorthstarDLL/include/crypto/x509.h b/include/crypto/x509.h index 1f00178e..1f00178e 100644 --- a/NorthstarDLL/include/crypto/x509.h +++ b/include/crypto/x509.h diff --git a/NorthstarDLL/include/crypto/x509err.h b/include/crypto/x509err.h index 53f567d9..53f567d9 100644 --- a/NorthstarDLL/include/crypto/x509err.h +++ b/include/crypto/x509err.h diff --git a/NorthstarDLL/include/crypto/x509v3err.h b/include/crypto/x509v3err.h index 66d3ad92..66d3ad92 100644 --- a/NorthstarDLL/include/crypto/x509v3err.h +++ b/include/crypto/x509v3err.h diff --git a/NorthstarDLL/include/httplib.h b/include/httplib.h index 2b52f0fc..2b52f0fc 100644 --- a/NorthstarDLL/include/httplib.h +++ b/include/httplib.h diff --git a/NorthstarDLL/include/internal/__DECC_INCLUDE_EPILOGUE.H b/include/internal/__DECC_INCLUDE_EPILOGUE.H index e57c0eab..e57c0eab 100644 --- a/NorthstarDLL/include/internal/__DECC_INCLUDE_EPILOGUE.H +++ b/include/internal/__DECC_INCLUDE_EPILOGUE.H diff --git a/NorthstarDLL/include/internal/__DECC_INCLUDE_PROLOGUE.H b/include/internal/__DECC_INCLUDE_PROLOGUE.H index a0139575..a0139575 100644 --- a/NorthstarDLL/include/internal/__DECC_INCLUDE_PROLOGUE.H +++ b/include/internal/__DECC_INCLUDE_PROLOGUE.H diff --git a/NorthstarDLL/include/internal/asn1.h b/include/internal/asn1.h index 3143e340..3143e340 100644 --- a/NorthstarDLL/include/internal/asn1.h +++ b/include/internal/asn1.h diff --git a/NorthstarDLL/include/internal/bio.h b/include/internal/bio.h index 2d36a7b9..2d36a7b9 100644 --- a/NorthstarDLL/include/internal/bio.h +++ b/include/internal/bio.h diff --git a/NorthstarDLL/include/internal/comp.h b/include/internal/comp.h index 3ad86fc7..3ad86fc7 100644 --- a/NorthstarDLL/include/internal/comp.h +++ b/include/internal/comp.h diff --git a/NorthstarDLL/include/internal/conf.h b/include/internal/conf.h index 8c6c29cd..8c6c29cd 100644 --- a/NorthstarDLL/include/internal/conf.h +++ b/include/internal/conf.h diff --git a/NorthstarDLL/include/internal/constant_time.h b/include/internal/constant_time.h index 0ed6f823..0ed6f823 100644 --- a/NorthstarDLL/include/internal/constant_time.h +++ b/include/internal/constant_time.h diff --git a/NorthstarDLL/include/internal/core.h b/include/internal/core.h index d9dc4241..d9dc4241 100644 --- a/NorthstarDLL/include/internal/core.h +++ b/include/internal/core.h diff --git a/NorthstarDLL/include/internal/cryptlib.h b/include/internal/cryptlib.h index 1291299b..1291299b 100644 --- a/NorthstarDLL/include/internal/cryptlib.h +++ b/include/internal/cryptlib.h diff --git a/NorthstarDLL/include/internal/dane.h b/include/internal/dane.h index a3d78a7f..a3d78a7f 100644 --- a/NorthstarDLL/include/internal/dane.h +++ b/include/internal/dane.h diff --git a/NorthstarDLL/include/internal/deprecated.h b/include/internal/deprecated.h index a313a015..a313a015 100644 --- a/NorthstarDLL/include/internal/deprecated.h +++ b/include/internal/deprecated.h diff --git a/NorthstarDLL/include/internal/der.h b/include/internal/der.h index a3e56d0d..a3e56d0d 100644 --- a/NorthstarDLL/include/internal/der.h +++ b/include/internal/der.h diff --git a/NorthstarDLL/include/internal/dso.h b/include/internal/dso.h index 160ddb98..160ddb98 100644 --- a/NorthstarDLL/include/internal/dso.h +++ b/include/internal/dso.h diff --git a/NorthstarDLL/include/internal/dsoerr.h b/include/internal/dsoerr.h index b1719e83..b1719e83 100644 --- a/NorthstarDLL/include/internal/dsoerr.h +++ b/include/internal/dsoerr.h diff --git a/NorthstarDLL/include/internal/endian.h b/include/internal/endian.h index 8b34e03e..8b34e03e 100644 --- a/NorthstarDLL/include/internal/endian.h +++ b/include/internal/endian.h diff --git a/NorthstarDLL/include/internal/err.h b/include/internal/err.h index d8a308f0..d8a308f0 100644 --- a/NorthstarDLL/include/internal/err.h +++ b/include/internal/err.h diff --git a/NorthstarDLL/include/internal/ffc.h b/include/internal/ffc.h index 79cb06ab..79cb06ab 100644 --- a/NorthstarDLL/include/internal/ffc.h +++ b/include/internal/ffc.h diff --git a/NorthstarDLL/include/internal/ktls.h b/include/internal/ktls.h index 95492fd0..95492fd0 100644 --- a/NorthstarDLL/include/internal/ktls.h +++ b/include/internal/ktls.h diff --git a/NorthstarDLL/include/internal/namemap.h b/include/internal/namemap.h index a4c60ae6..a4c60ae6 100644 --- a/NorthstarDLL/include/internal/namemap.h +++ b/include/internal/namemap.h diff --git a/NorthstarDLL/include/internal/nelem.h b/include/internal/nelem.h index b758513b..b758513b 100644 --- a/NorthstarDLL/include/internal/nelem.h +++ b/include/internal/nelem.h diff --git a/NorthstarDLL/include/internal/numbers.h b/include/internal/numbers.h index 4f4d3306..4f4d3306 100644 --- a/NorthstarDLL/include/internal/numbers.h +++ b/include/internal/numbers.h diff --git a/NorthstarDLL/include/internal/o_dir.h b/include/internal/o_dir.h index add34d14..add34d14 100644 --- a/NorthstarDLL/include/internal/o_dir.h +++ b/include/internal/o_dir.h diff --git a/NorthstarDLL/include/internal/packet.h b/include/internal/packet.h index 170997db..170997db 100644 --- a/NorthstarDLL/include/internal/packet.h +++ b/include/internal/packet.h diff --git a/NorthstarDLL/include/internal/param_build_set.h b/include/internal/param_build_set.h index 126211b7..126211b7 100644 --- a/NorthstarDLL/include/internal/param_build_set.h +++ b/include/internal/param_build_set.h diff --git a/NorthstarDLL/include/internal/passphrase.h b/include/internal/passphrase.h index 54d997b0..54d997b0 100644 --- a/NorthstarDLL/include/internal/passphrase.h +++ b/include/internal/passphrase.h diff --git a/NorthstarDLL/include/internal/property.h b/include/internal/property.h index 82119745..82119745 100644 --- a/NorthstarDLL/include/internal/property.h +++ b/include/internal/property.h diff --git a/NorthstarDLL/include/internal/propertyerr.h b/include/internal/propertyerr.h index fbee53f1..fbee53f1 100644 --- a/NorthstarDLL/include/internal/propertyerr.h +++ b/include/internal/propertyerr.h diff --git a/NorthstarDLL/include/internal/provider.h b/include/internal/provider.h index d09829d0..d09829d0 100644 --- a/NorthstarDLL/include/internal/provider.h +++ b/include/internal/provider.h diff --git a/NorthstarDLL/include/internal/refcount.h b/include/internal/refcount.h index 7412d62f..7412d62f 100644 --- a/NorthstarDLL/include/internal/refcount.h +++ b/include/internal/refcount.h diff --git a/NorthstarDLL/include/internal/sha3.h b/include/internal/sha3.h index 80ad86e5..80ad86e5 100644 --- a/NorthstarDLL/include/internal/sha3.h +++ b/include/internal/sha3.h diff --git a/NorthstarDLL/include/internal/sizes.h b/include/internal/sizes.h index f6496c81..f6496c81 100644 --- a/NorthstarDLL/include/internal/sizes.h +++ b/include/internal/sizes.h diff --git a/NorthstarDLL/include/internal/sm3.h b/include/internal/sm3.h index db1d61f0..db1d61f0 100644 --- a/NorthstarDLL/include/internal/sm3.h +++ b/include/internal/sm3.h diff --git a/NorthstarDLL/include/internal/sockets.h b/include/internal/sockets.h index 6e882fa6..6e882fa6 100644 --- a/NorthstarDLL/include/internal/sockets.h +++ b/include/internal/sockets.h diff --git a/NorthstarDLL/include/internal/sslconf.h b/include/internal/sslconf.h index fd7f7e33..fd7f7e33 100644 --- a/NorthstarDLL/include/internal/sslconf.h +++ b/include/internal/sslconf.h diff --git a/NorthstarDLL/include/internal/symhacks.h b/include/internal/symhacks.h index 33bae51e..33bae51e 100644 --- a/NorthstarDLL/include/internal/symhacks.h +++ b/include/internal/symhacks.h diff --git a/NorthstarDLL/include/internal/thread_once.h b/include/internal/thread_once.h index d6cb2eee..d6cb2eee 100644 --- a/NorthstarDLL/include/internal/thread_once.h +++ b/include/internal/thread_once.h diff --git a/NorthstarDLL/include/internal/tlsgroups.h b/include/internal/tlsgroups.h index 8a35ced1..8a35ced1 100644 --- a/NorthstarDLL/include/internal/tlsgroups.h +++ b/include/internal/tlsgroups.h diff --git a/NorthstarDLL/include/internal/tsan_assist.h b/include/internal/tsan_assist.h index f8285b1d..f8285b1d 100644 --- a/NorthstarDLL/include/internal/tsan_assist.h +++ b/include/internal/tsan_assist.h diff --git a/NorthstarDLL/include/internal/unicode.h b/include/internal/unicode.h index a6de8352..a6de8352 100644 --- a/NorthstarDLL/include/internal/unicode.h +++ b/include/internal/unicode.h diff --git a/NorthstarDLL/include/libcrypto_static.lib b/include/libcrypto_static.lib Binary files differindex 0ddd830c..0ddd830c 100644 --- a/NorthstarDLL/include/libcrypto_static.lib +++ b/include/libcrypto_static.lib diff --git a/NorthstarDLL/include/libcurl/include/curl/curl.h b/include/libcurl/include/curl/curl.h index 7b69ce2d..7b69ce2d 100644 --- a/NorthstarDLL/include/libcurl/include/curl/curl.h +++ b/include/libcurl/include/curl/curl.h diff --git a/NorthstarDLL/include/libcurl/include/curl/curlver.h b/include/libcurl/include/curl/curlver.h index fe57e430..fe57e430 100644 --- a/NorthstarDLL/include/libcurl/include/curl/curlver.h +++ b/include/libcurl/include/curl/curlver.h diff --git a/NorthstarDLL/include/libcurl/include/curl/easy.h b/include/libcurl/include/curl/easy.h index 2dbfb26b..2dbfb26b 100644 --- a/NorthstarDLL/include/libcurl/include/curl/easy.h +++ b/include/libcurl/include/curl/easy.h diff --git a/NorthstarDLL/include/libcurl/include/curl/mprintf.h b/include/libcurl/include/curl/mprintf.h index 3549552d..3549552d 100644 --- a/NorthstarDLL/include/libcurl/include/curl/mprintf.h +++ b/include/libcurl/include/curl/mprintf.h diff --git a/NorthstarDLL/include/libcurl/include/curl/multi.h b/include/libcurl/include/curl/multi.h index 91cd95d3..91cd95d3 100644 --- a/NorthstarDLL/include/libcurl/include/curl/multi.h +++ b/include/libcurl/include/curl/multi.h diff --git a/NorthstarDLL/include/libcurl/include/curl/options.h b/include/libcurl/include/curl/options.h index 14373b55..14373b55 100644 --- a/NorthstarDLL/include/libcurl/include/curl/options.h +++ b/include/libcurl/include/curl/options.h diff --git a/NorthstarDLL/include/libcurl/include/curl/stdcheaders.h b/include/libcurl/include/curl/stdcheaders.h index 60596c75..60596c75 100644 --- a/NorthstarDLL/include/libcurl/include/curl/stdcheaders.h +++ b/include/libcurl/include/curl/stdcheaders.h diff --git a/NorthstarDLL/include/libcurl/include/curl/system.h b/include/libcurl/include/curl/system.h index faf8fcf8..faf8fcf8 100644 --- a/NorthstarDLL/include/libcurl/include/curl/system.h +++ b/include/libcurl/include/curl/system.h diff --git a/NorthstarDLL/include/libcurl/include/curl/typecheck-gcc.h b/include/libcurl/include/curl/typecheck-gcc.h index 9e14d8a3..9e14d8a3 100644 --- a/NorthstarDLL/include/libcurl/include/curl/typecheck-gcc.h +++ b/include/libcurl/include/curl/typecheck-gcc.h diff --git a/NorthstarDLL/include/libcurl/include/curl/urlapi.h b/include/libcurl/include/curl/urlapi.h index a475f91b..a475f91b 100644 --- a/NorthstarDLL/include/libcurl/include/curl/urlapi.h +++ b/include/libcurl/include/curl/urlapi.h diff --git a/NorthstarDLL/include/libcurl/lib/libcurl_a.lib b/include/libcurl/lib/libcurl_a.lib Binary files differindex 32b917c9..32b917c9 100644 --- a/NorthstarDLL/include/libcurl/lib/libcurl_a.lib +++ b/include/libcurl/lib/libcurl_a.lib diff --git a/NorthstarDLL/include/libssl_static.lib b/include/libssl_static.lib Binary files differindex f7916421..f7916421 100644 --- a/NorthstarDLL/include/libssl_static.lib +++ b/include/libssl_static.lib diff --git a/NorthstarDLL/include/openssl/__DECC_INCLUDE_EPILOGUE.H b/include/openssl/__DECC_INCLUDE_EPILOGUE.H index d251d0a0..d251d0a0 100644 --- a/NorthstarDLL/include/openssl/__DECC_INCLUDE_EPILOGUE.H +++ b/include/openssl/__DECC_INCLUDE_EPILOGUE.H diff --git a/NorthstarDLL/include/openssl/__DECC_INCLUDE_PROLOGUE.H b/include/openssl/__DECC_INCLUDE_PROLOGUE.H index 91ac6b33..91ac6b33 100644 --- a/NorthstarDLL/include/openssl/__DECC_INCLUDE_PROLOGUE.H +++ b/include/openssl/__DECC_INCLUDE_PROLOGUE.H diff --git a/NorthstarDLL/include/openssl/aes.h b/include/openssl/aes.h index d0f9dfc6..d0f9dfc6 100644 --- a/NorthstarDLL/include/openssl/aes.h +++ b/include/openssl/aes.h diff --git a/NorthstarDLL/include/openssl/asn1.h b/include/openssl/asn1.h index aada23dc..aada23dc 100644 --- a/NorthstarDLL/include/openssl/asn1.h +++ b/include/openssl/asn1.h diff --git a/NorthstarDLL/include/openssl/asn1.h.in b/include/openssl/asn1.h.in index 6d5094a3..6d5094a3 100644 --- a/NorthstarDLL/include/openssl/asn1.h.in +++ b/include/openssl/asn1.h.in diff --git a/NorthstarDLL/include/openssl/asn1_mac.h b/include/openssl/asn1_mac.h index fdcb9836..fdcb9836 100644 --- a/NorthstarDLL/include/openssl/asn1_mac.h +++ b/include/openssl/asn1_mac.h diff --git a/NorthstarDLL/include/openssl/asn1err.h b/include/openssl/asn1err.h index d4276220..d4276220 100644 --- a/NorthstarDLL/include/openssl/asn1err.h +++ b/include/openssl/asn1err.h diff --git a/NorthstarDLL/include/openssl/asn1t.h b/include/openssl/asn1t.h index a725c532..a725c532 100644 --- a/NorthstarDLL/include/openssl/asn1t.h +++ b/include/openssl/asn1t.h diff --git a/NorthstarDLL/include/openssl/asn1t.h.in b/include/openssl/asn1t.h.in index b536fe51..b536fe51 100644 --- a/NorthstarDLL/include/openssl/asn1t.h.in +++ b/include/openssl/asn1t.h.in diff --git a/NorthstarDLL/include/openssl/async.h b/include/openssl/async.h index bc27d5db..bc27d5db 100644 --- a/NorthstarDLL/include/openssl/async.h +++ b/include/openssl/async.h diff --git a/NorthstarDLL/include/openssl/asyncerr.h b/include/openssl/asyncerr.h index c093f7be..c093f7be 100644 --- a/NorthstarDLL/include/openssl/asyncerr.h +++ b/include/openssl/asyncerr.h diff --git a/NorthstarDLL/include/openssl/bio.h b/include/openssl/bio.h index 3ef0cafb..3ef0cafb 100644 --- a/NorthstarDLL/include/openssl/bio.h +++ b/include/openssl/bio.h diff --git a/NorthstarDLL/include/openssl/bio.h.in b/include/openssl/bio.h.in index 2c65b7e1..2c65b7e1 100644 --- a/NorthstarDLL/include/openssl/bio.h.in +++ b/include/openssl/bio.h.in diff --git a/NorthstarDLL/include/openssl/bioerr.h b/include/openssl/bioerr.h index 787b30af..787b30af 100644 --- a/NorthstarDLL/include/openssl/bioerr.h +++ b/include/openssl/bioerr.h diff --git a/NorthstarDLL/include/openssl/blowfish.h b/include/openssl/blowfish.h index 667d6423..667d6423 100644 --- a/NorthstarDLL/include/openssl/blowfish.h +++ b/include/openssl/blowfish.h diff --git a/NorthstarDLL/include/openssl/bn.h b/include/openssl/bn.h index ecd7f01b..ecd7f01b 100644 --- a/NorthstarDLL/include/openssl/bn.h +++ b/include/openssl/bn.h diff --git a/NorthstarDLL/include/openssl/bnerr.h b/include/openssl/bnerr.h index 847d326b..847d326b 100644 --- a/NorthstarDLL/include/openssl/bnerr.h +++ b/include/openssl/bnerr.h diff --git a/NorthstarDLL/include/openssl/buffer.h b/include/openssl/buffer.h index 5773b986..5773b986 100644 --- a/NorthstarDLL/include/openssl/buffer.h +++ b/include/openssl/buffer.h diff --git a/NorthstarDLL/include/openssl/buffererr.h b/include/openssl/buffererr.h index d18b1f8f..d18b1f8f 100644 --- a/NorthstarDLL/include/openssl/buffererr.h +++ b/include/openssl/buffererr.h diff --git a/NorthstarDLL/include/openssl/camellia.h b/include/openssl/camellia.h index 88c2279e..88c2279e 100644 --- a/NorthstarDLL/include/openssl/camellia.h +++ b/include/openssl/camellia.h diff --git a/NorthstarDLL/include/openssl/cast.h b/include/openssl/cast.h index 0bf217be..0bf217be 100644 --- a/NorthstarDLL/include/openssl/cast.h +++ b/include/openssl/cast.h diff --git a/NorthstarDLL/include/openssl/cmac.h b/include/openssl/cmac.h index f5086183..f5086183 100644 --- a/NorthstarDLL/include/openssl/cmac.h +++ b/include/openssl/cmac.h diff --git a/NorthstarDLL/include/openssl/cmp.h b/include/openssl/cmp.h index 7f258dc9..7f258dc9 100644 --- a/NorthstarDLL/include/openssl/cmp.h +++ b/include/openssl/cmp.h diff --git a/NorthstarDLL/include/openssl/cmp.h.in b/include/openssl/cmp.h.in index b4734421..b4734421 100644 --- a/NorthstarDLL/include/openssl/cmp.h.in +++ b/include/openssl/cmp.h.in diff --git a/NorthstarDLL/include/openssl/cmp_util.h b/include/openssl/cmp_util.h index 9a168922..9a168922 100644 --- a/NorthstarDLL/include/openssl/cmp_util.h +++ b/include/openssl/cmp_util.h diff --git a/NorthstarDLL/include/openssl/cmperr.h b/include/openssl/cmperr.h index 3a26fd0b..3a26fd0b 100644 --- a/NorthstarDLL/include/openssl/cmperr.h +++ b/include/openssl/cmperr.h diff --git a/NorthstarDLL/include/openssl/cms.h b/include/openssl/cms.h index 5b907f2c..5b907f2c 100644 --- a/NorthstarDLL/include/openssl/cms.h +++ b/include/openssl/cms.h diff --git a/NorthstarDLL/include/openssl/cms.h.in b/include/openssl/cms.h.in index da20ddf2..da20ddf2 100644 --- a/NorthstarDLL/include/openssl/cms.h.in +++ b/include/openssl/cms.h.in diff --git a/NorthstarDLL/include/openssl/cmserr.h b/include/openssl/cmserr.h index 1c4f4c79..1c4f4c79 100644 --- a/NorthstarDLL/include/openssl/cmserr.h +++ b/include/openssl/cmserr.h diff --git a/NorthstarDLL/include/openssl/comp.h b/include/openssl/comp.h index 06ff5810..06ff5810 100644 --- a/NorthstarDLL/include/openssl/comp.h +++ b/include/openssl/comp.h diff --git a/NorthstarDLL/include/openssl/comperr.h b/include/openssl/comperr.h index 01dd3e6b..01dd3e6b 100644 --- a/NorthstarDLL/include/openssl/comperr.h +++ b/include/openssl/comperr.h diff --git a/NorthstarDLL/include/openssl/conf.h b/include/openssl/conf.h index 07793f17..07793f17 100644 --- a/NorthstarDLL/include/openssl/conf.h +++ b/include/openssl/conf.h diff --git a/NorthstarDLL/include/openssl/conf.h.in b/include/openssl/conf.h.in index b0bd579a..b0bd579a 100644 --- a/NorthstarDLL/include/openssl/conf.h.in +++ b/include/openssl/conf.h.in diff --git a/NorthstarDLL/include/openssl/conf_api.h b/include/openssl/conf_api.h index ed67d577..ed67d577 100644 --- a/NorthstarDLL/include/openssl/conf_api.h +++ b/include/openssl/conf_api.h diff --git a/NorthstarDLL/include/openssl/conferr.h b/include/openssl/conferr.h index 496e2e1e..496e2e1e 100644 --- a/NorthstarDLL/include/openssl/conferr.h +++ b/include/openssl/conferr.h diff --git a/NorthstarDLL/include/openssl/configuration.h b/include/openssl/configuration.h index d9662edd..d9662edd 100644 --- a/NorthstarDLL/include/openssl/configuration.h +++ b/include/openssl/configuration.h diff --git a/NorthstarDLL/include/openssl/configuration.h.in b/include/openssl/configuration.h.in index b84dc1df..b84dc1df 100644 --- a/NorthstarDLL/include/openssl/configuration.h.in +++ b/include/openssl/configuration.h.in diff --git a/NorthstarDLL/include/openssl/conftypes.h b/include/openssl/conftypes.h index 17cefaa4..17cefaa4 100644 --- a/NorthstarDLL/include/openssl/conftypes.h +++ b/include/openssl/conftypes.h diff --git a/NorthstarDLL/include/openssl/core.h b/include/openssl/core.h index 9683ac70..9683ac70 100644 --- a/NorthstarDLL/include/openssl/core.h +++ b/include/openssl/core.h diff --git a/NorthstarDLL/include/openssl/core_dispatch.h b/include/openssl/core_dispatch.h index 99fcda00..99fcda00 100644 --- a/NorthstarDLL/include/openssl/core_dispatch.h +++ b/include/openssl/core_dispatch.h diff --git a/NorthstarDLL/include/openssl/core_names.h b/include/openssl/core_names.h index b549dae9..b549dae9 100644 --- a/NorthstarDLL/include/openssl/core_names.h +++ b/include/openssl/core_names.h diff --git a/NorthstarDLL/include/openssl/core_object.h b/include/openssl/core_object.h index 62ccf39d..62ccf39d 100644 --- a/NorthstarDLL/include/openssl/core_object.h +++ b/include/openssl/core_object.h diff --git a/NorthstarDLL/include/openssl/crmf.h b/include/openssl/crmf.h index b2a82edb..b2a82edb 100644 --- a/NorthstarDLL/include/openssl/crmf.h +++ b/include/openssl/crmf.h diff --git a/NorthstarDLL/include/openssl/crmf.h.in b/include/openssl/crmf.h.in index 4d37ea6d..4d37ea6d 100644 --- a/NorthstarDLL/include/openssl/crmf.h.in +++ b/include/openssl/crmf.h.in diff --git a/NorthstarDLL/include/openssl/crmferr.h b/include/openssl/crmferr.h index b242b922..b242b922 100644 --- a/NorthstarDLL/include/openssl/crmferr.h +++ b/include/openssl/crmferr.h diff --git a/NorthstarDLL/include/openssl/crypto.h b/include/openssl/crypto.h index ef327f20..ef327f20 100644 --- a/NorthstarDLL/include/openssl/crypto.h +++ b/include/openssl/crypto.h diff --git a/NorthstarDLL/include/openssl/crypto.h.in b/include/openssl/crypto.h.in index 724e2ca5..724e2ca5 100644 --- a/NorthstarDLL/include/openssl/crypto.h.in +++ b/include/openssl/crypto.h.in diff --git a/NorthstarDLL/include/openssl/cryptoerr.h b/include/openssl/cryptoerr.h index c6a04d9b..c6a04d9b 100644 --- a/NorthstarDLL/include/openssl/cryptoerr.h +++ b/include/openssl/cryptoerr.h diff --git a/NorthstarDLL/include/openssl/cryptoerr_legacy.h b/include/openssl/cryptoerr_legacy.h index ccab33a5..ccab33a5 100644 --- a/NorthstarDLL/include/openssl/cryptoerr_legacy.h +++ b/include/openssl/cryptoerr_legacy.h diff --git a/NorthstarDLL/include/openssl/ct.h b/include/openssl/ct.h index 06c41b70..06c41b70 100644 --- a/NorthstarDLL/include/openssl/ct.h +++ b/include/openssl/ct.h diff --git a/NorthstarDLL/include/openssl/ct.h.in b/include/openssl/ct.h.in index 16086b33..16086b33 100644 --- a/NorthstarDLL/include/openssl/ct.h.in +++ b/include/openssl/ct.h.in diff --git a/NorthstarDLL/include/openssl/cterr.h b/include/openssl/cterr.h index 935d32d8..935d32d8 100644 --- a/NorthstarDLL/include/openssl/cterr.h +++ b/include/openssl/cterr.h diff --git a/NorthstarDLL/include/openssl/decoder.h b/include/openssl/decoder.h index d4ee2cf4..d4ee2cf4 100644 --- a/NorthstarDLL/include/openssl/decoder.h +++ b/include/openssl/decoder.h diff --git a/NorthstarDLL/include/openssl/decodererr.h b/include/openssl/decodererr.h index 4212a38b..4212a38b 100644 --- a/NorthstarDLL/include/openssl/decodererr.h +++ b/include/openssl/decodererr.h diff --git a/NorthstarDLL/include/openssl/des.h b/include/openssl/des.h index 09798a61..09798a61 100644 --- a/NorthstarDLL/include/openssl/des.h +++ b/include/openssl/des.h diff --git a/NorthstarDLL/include/openssl/dh.h b/include/openssl/dh.h index b97871ec..b97871ec 100644 --- a/NorthstarDLL/include/openssl/dh.h +++ b/include/openssl/dh.h diff --git a/NorthstarDLL/include/openssl/dherr.h b/include/openssl/dherr.h index 5d2a762a..5d2a762a 100644 --- a/NorthstarDLL/include/openssl/dherr.h +++ b/include/openssl/dherr.h diff --git a/NorthstarDLL/include/openssl/dsa.h b/include/openssl/dsa.h index 5c0e4cdd..5c0e4cdd 100644 --- a/NorthstarDLL/include/openssl/dsa.h +++ b/include/openssl/dsa.h diff --git a/NorthstarDLL/include/openssl/dsaerr.h b/include/openssl/dsaerr.h index 5f0ca8d1..5f0ca8d1 100644 --- a/NorthstarDLL/include/openssl/dsaerr.h +++ b/include/openssl/dsaerr.h diff --git a/NorthstarDLL/include/openssl/dtls1.h b/include/openssl/dtls1.h index 5dc6b541..5dc6b541 100644 --- a/NorthstarDLL/include/openssl/dtls1.h +++ b/include/openssl/dtls1.h diff --git a/NorthstarDLL/include/openssl/e_os2.h b/include/openssl/e_os2.h index 67289092..67289092 100644 --- a/NorthstarDLL/include/openssl/e_os2.h +++ b/include/openssl/e_os2.h diff --git a/NorthstarDLL/include/openssl/ebcdic.h b/include/openssl/ebcdic.h index e0ae1aa8..e0ae1aa8 100644 --- a/NorthstarDLL/include/openssl/ebcdic.h +++ b/include/openssl/ebcdic.h diff --git a/NorthstarDLL/include/openssl/ec.h b/include/openssl/ec.h index f59b4f92..f59b4f92 100644 --- a/NorthstarDLL/include/openssl/ec.h +++ b/include/openssl/ec.h diff --git a/NorthstarDLL/include/openssl/ecdh.h b/include/openssl/ecdh.h index 56bd4cc2..56bd4cc2 100644 --- a/NorthstarDLL/include/openssl/ecdh.h +++ b/include/openssl/ecdh.h diff --git a/NorthstarDLL/include/openssl/ecdsa.h b/include/openssl/ecdsa.h index 56bd4cc2..56bd4cc2 100644 --- a/NorthstarDLL/include/openssl/ecdsa.h +++ b/include/openssl/ecdsa.h diff --git a/NorthstarDLL/include/openssl/ecerr.h b/include/openssl/ecerr.h index 49088d20..49088d20 100644 --- a/NorthstarDLL/include/openssl/ecerr.h +++ b/include/openssl/ecerr.h diff --git a/NorthstarDLL/include/openssl/encoder.h b/include/openssl/encoder.h index c37a6f16..c37a6f16 100644 --- a/NorthstarDLL/include/openssl/encoder.h +++ b/include/openssl/encoder.h diff --git a/NorthstarDLL/include/openssl/encodererr.h b/include/openssl/encodererr.h index 5e318b14..5e318b14 100644 --- a/NorthstarDLL/include/openssl/encodererr.h +++ b/include/openssl/encodererr.h diff --git a/NorthstarDLL/include/openssl/engine.h b/include/openssl/engine.h index 25c3cf7c..25c3cf7c 100644 --- a/NorthstarDLL/include/openssl/engine.h +++ b/include/openssl/engine.h diff --git a/NorthstarDLL/include/openssl/engineerr.h b/include/openssl/engineerr.h index d439b682..d439b682 100644 --- a/NorthstarDLL/include/openssl/engineerr.h +++ b/include/openssl/engineerr.h diff --git a/NorthstarDLL/include/openssl/err.h b/include/openssl/err.h index 3c7299db..3c7299db 100644 --- a/NorthstarDLL/include/openssl/err.h +++ b/include/openssl/err.h diff --git a/NorthstarDLL/include/openssl/err.h.in b/include/openssl/err.h.in index 7ca0b970..7ca0b970 100644 --- a/NorthstarDLL/include/openssl/err.h.in +++ b/include/openssl/err.h.in diff --git a/NorthstarDLL/include/openssl/ess.h b/include/openssl/ess.h index dad596a6..dad596a6 100644 --- a/NorthstarDLL/include/openssl/ess.h +++ b/include/openssl/ess.h diff --git a/NorthstarDLL/include/openssl/ess.h.in b/include/openssl/ess.h.in index d1a685b9..d1a685b9 100644 --- a/NorthstarDLL/include/openssl/ess.h.in +++ b/include/openssl/ess.h.in diff --git a/NorthstarDLL/include/openssl/esserr.h b/include/openssl/esserr.h index 165ce7c4..165ce7c4 100644 --- a/NorthstarDLL/include/openssl/esserr.h +++ b/include/openssl/esserr.h diff --git a/NorthstarDLL/include/openssl/evp.h b/include/openssl/evp.h index 18503817..18503817 100644 --- a/NorthstarDLL/include/openssl/evp.h +++ b/include/openssl/evp.h diff --git a/NorthstarDLL/include/openssl/evperr.h b/include/openssl/evperr.h index a5053f6c..a5053f6c 100644 --- a/NorthstarDLL/include/openssl/evperr.h +++ b/include/openssl/evperr.h diff --git a/NorthstarDLL/include/openssl/fips_names.h b/include/openssl/fips_names.h index 0fdf5440..0fdf5440 100644 --- a/NorthstarDLL/include/openssl/fips_names.h +++ b/include/openssl/fips_names.h diff --git a/NorthstarDLL/include/openssl/fipskey.h b/include/openssl/fipskey.h index ccc1d2f4..ccc1d2f4 100644 --- a/NorthstarDLL/include/openssl/fipskey.h +++ b/include/openssl/fipskey.h diff --git a/NorthstarDLL/include/openssl/fipskey.h.in b/include/openssl/fipskey.h.in index 56b947e8..56b947e8 100644 --- a/NorthstarDLL/include/openssl/fipskey.h.in +++ b/include/openssl/fipskey.h.in diff --git a/NorthstarDLL/include/openssl/hmac.h b/include/openssl/hmac.h index f9e1bff3..f9e1bff3 100644 --- a/NorthstarDLL/include/openssl/hmac.h +++ b/include/openssl/hmac.h diff --git a/NorthstarDLL/include/openssl/http.h b/include/openssl/http.h index f7ab2142..f7ab2142 100644 --- a/NorthstarDLL/include/openssl/http.h +++ b/include/openssl/http.h diff --git a/NorthstarDLL/include/openssl/httperr.h b/include/openssl/httperr.h index ee089592..ee089592 100644 --- a/NorthstarDLL/include/openssl/httperr.h +++ b/include/openssl/httperr.h diff --git a/NorthstarDLL/include/openssl/idea.h b/include/openssl/idea.h index 1f9bb3b3..1f9bb3b3 100644 --- a/NorthstarDLL/include/openssl/idea.h +++ b/include/openssl/idea.h diff --git a/NorthstarDLL/include/openssl/kdf.h b/include/openssl/kdf.h index 0983230a..0983230a 100644 --- a/NorthstarDLL/include/openssl/kdf.h +++ b/include/openssl/kdf.h diff --git a/NorthstarDLL/include/openssl/kdferr.h b/include/openssl/kdferr.h index 963d766d..963d766d 100644 --- a/NorthstarDLL/include/openssl/kdferr.h +++ b/include/openssl/kdferr.h diff --git a/NorthstarDLL/include/openssl/lhash.h b/include/openssl/lhash.h index 39dd6254..39dd6254 100644 --- a/NorthstarDLL/include/openssl/lhash.h +++ b/include/openssl/lhash.h diff --git a/NorthstarDLL/include/openssl/lhash.h.in b/include/openssl/lhash.h.in index febefa3c..febefa3c 100644 --- a/NorthstarDLL/include/openssl/lhash.h.in +++ b/include/openssl/lhash.h.in diff --git a/NorthstarDLL/include/openssl/macros.h b/include/openssl/macros.h index a6bc3f1f..a6bc3f1f 100644 --- a/NorthstarDLL/include/openssl/macros.h +++ b/include/openssl/macros.h diff --git a/NorthstarDLL/include/openssl/md2.h b/include/openssl/md2.h index 5d4cb77e..5d4cb77e 100644 --- a/NorthstarDLL/include/openssl/md2.h +++ b/include/openssl/md2.h diff --git a/NorthstarDLL/include/openssl/md4.h b/include/openssl/md4.h index 6c150a6c..6c150a6c 100644 --- a/NorthstarDLL/include/openssl/md4.h +++ b/include/openssl/md4.h diff --git a/NorthstarDLL/include/openssl/md5.h b/include/openssl/md5.h index 77a57734..77a57734 100644 --- a/NorthstarDLL/include/openssl/md5.h +++ b/include/openssl/md5.h diff --git a/NorthstarDLL/include/openssl/mdc2.h b/include/openssl/mdc2.h index 5a7ee289..5a7ee289 100644 --- a/NorthstarDLL/include/openssl/mdc2.h +++ b/include/openssl/mdc2.h diff --git a/NorthstarDLL/include/openssl/modes.h b/include/openssl/modes.h index e1907991..e1907991 100644 --- a/NorthstarDLL/include/openssl/modes.h +++ b/include/openssl/modes.h diff --git a/NorthstarDLL/include/openssl/obj_mac.h b/include/openssl/obj_mac.h index 0e860276..0e860276 100644 --- a/NorthstarDLL/include/openssl/obj_mac.h +++ b/include/openssl/obj_mac.h diff --git a/NorthstarDLL/include/openssl/objects.h b/include/openssl/objects.h index 9ea91c27..9ea91c27 100644 --- a/NorthstarDLL/include/openssl/objects.h +++ b/include/openssl/objects.h diff --git a/NorthstarDLL/include/openssl/objectserr.h b/include/openssl/objectserr.h index 585217f6..585217f6 100644 --- a/NorthstarDLL/include/openssl/objectserr.h +++ b/include/openssl/objectserr.h diff --git a/NorthstarDLL/include/openssl/ocsp.h b/include/openssl/ocsp.h index 5688381e..5688381e 100644 --- a/NorthstarDLL/include/openssl/ocsp.h +++ b/include/openssl/ocsp.h diff --git a/NorthstarDLL/include/openssl/ocsp.h.in b/include/openssl/ocsp.h.in index e2cc2716..e2cc2716 100644 --- a/NorthstarDLL/include/openssl/ocsp.h.in +++ b/include/openssl/ocsp.h.in diff --git a/NorthstarDLL/include/openssl/ocsperr.h b/include/openssl/ocsperr.h index 46a0523c..46a0523c 100644 --- a/NorthstarDLL/include/openssl/ocsperr.h +++ b/include/openssl/ocsperr.h diff --git a/NorthstarDLL/include/openssl/opensslconf.h b/include/openssl/opensslconf.h index 1e83371f..1e83371f 100644 --- a/NorthstarDLL/include/openssl/opensslconf.h +++ b/include/openssl/opensslconf.h diff --git a/NorthstarDLL/include/openssl/opensslv.h b/include/openssl/opensslv.h index 612d5aec..612d5aec 100644 --- a/NorthstarDLL/include/openssl/opensslv.h +++ b/include/openssl/opensslv.h diff --git a/NorthstarDLL/include/openssl/opensslv.h.in b/include/openssl/opensslv.h.in index 3f47a2ac..3f47a2ac 100644 --- a/NorthstarDLL/include/openssl/opensslv.h.in +++ b/include/openssl/opensslv.h.in diff --git a/NorthstarDLL/include/openssl/ossl_typ.h b/include/openssl/ossl_typ.h index 82a58988..82a58988 100644 --- a/NorthstarDLL/include/openssl/ossl_typ.h +++ b/include/openssl/ossl_typ.h diff --git a/NorthstarDLL/include/openssl/param_build.h b/include/openssl/param_build.h index f29fdb29..f29fdb29 100644 --- a/NorthstarDLL/include/openssl/param_build.h +++ b/include/openssl/param_build.h diff --git a/NorthstarDLL/include/openssl/params.h b/include/openssl/params.h index d75eab07..d75eab07 100644 --- a/NorthstarDLL/include/openssl/params.h +++ b/include/openssl/params.h diff --git a/NorthstarDLL/include/openssl/pem.h b/include/openssl/pem.h index 80940dfa..80940dfa 100644 --- a/NorthstarDLL/include/openssl/pem.h +++ b/include/openssl/pem.h diff --git a/NorthstarDLL/include/openssl/pem2.h b/include/openssl/pem2.h index a8a5325b..a8a5325b 100644 --- a/NorthstarDLL/include/openssl/pem2.h +++ b/include/openssl/pem2.h diff --git a/NorthstarDLL/include/openssl/pemerr.h b/include/openssl/pemerr.h index 18f6d9ef..18f6d9ef 100644 --- a/NorthstarDLL/include/openssl/pemerr.h +++ b/include/openssl/pemerr.h diff --git a/NorthstarDLL/include/openssl/pkcs12.h b/include/openssl/pkcs12.h index f0da0867..f0da0867 100644 --- a/NorthstarDLL/include/openssl/pkcs12.h +++ b/include/openssl/pkcs12.h diff --git a/NorthstarDLL/include/openssl/pkcs12.h.in b/include/openssl/pkcs12.h.in index c98eebfb..c98eebfb 100644 --- a/NorthstarDLL/include/openssl/pkcs12.h.in +++ b/include/openssl/pkcs12.h.in diff --git a/NorthstarDLL/include/openssl/pkcs12err.h b/include/openssl/pkcs12err.h index 933c8329..933c8329 100644 --- a/NorthstarDLL/include/openssl/pkcs12err.h +++ b/include/openssl/pkcs12err.h diff --git a/NorthstarDLL/include/openssl/pkcs7.h b/include/openssl/pkcs7.h index 097d2dbb..097d2dbb 100644 --- a/NorthstarDLL/include/openssl/pkcs7.h +++ b/include/openssl/pkcs7.h diff --git a/NorthstarDLL/include/openssl/pkcs7.h.in b/include/openssl/pkcs7.h.in index f5c55a3f..f5c55a3f 100644 --- a/NorthstarDLL/include/openssl/pkcs7.h.in +++ b/include/openssl/pkcs7.h.in diff --git a/NorthstarDLL/include/openssl/pkcs7err.h b/include/openssl/pkcs7err.h index ceb1a501..ceb1a501 100644 --- a/NorthstarDLL/include/openssl/pkcs7err.h +++ b/include/openssl/pkcs7err.h diff --git a/NorthstarDLL/include/openssl/prov_ssl.h b/include/openssl/prov_ssl.h index d3e0896c..d3e0896c 100644 --- a/NorthstarDLL/include/openssl/prov_ssl.h +++ b/include/openssl/prov_ssl.h diff --git a/NorthstarDLL/include/openssl/proverr.h b/include/openssl/proverr.h index ad67a8f8..ad67a8f8 100644 --- a/NorthstarDLL/include/openssl/proverr.h +++ b/include/openssl/proverr.h diff --git a/NorthstarDLL/include/openssl/provider.h b/include/openssl/provider.h index dc86ff58..dc86ff58 100644 --- a/NorthstarDLL/include/openssl/provider.h +++ b/include/openssl/provider.h diff --git a/NorthstarDLL/include/openssl/rand.h b/include/openssl/rand.h index ad3054fd..ad3054fd 100644 --- a/NorthstarDLL/include/openssl/rand.h +++ b/include/openssl/rand.h diff --git a/NorthstarDLL/include/openssl/randerr.h b/include/openssl/randerr.h index b5e08e43..b5e08e43 100644 --- a/NorthstarDLL/include/openssl/randerr.h +++ b/include/openssl/randerr.h diff --git a/NorthstarDLL/include/openssl/rc2.h b/include/openssl/rc2.h index ff633fd8..ff633fd8 100644 --- a/NorthstarDLL/include/openssl/rc2.h +++ b/include/openssl/rc2.h diff --git a/NorthstarDLL/include/openssl/rc4.h b/include/openssl/rc4.h index 600b2885..600b2885 100644 --- a/NorthstarDLL/include/openssl/rc4.h +++ b/include/openssl/rc4.h diff --git a/NorthstarDLL/include/openssl/rc5.h b/include/openssl/rc5.h index de833523..de833523 100644 --- a/NorthstarDLL/include/openssl/rc5.h +++ b/include/openssl/rc5.h diff --git a/NorthstarDLL/include/openssl/ripemd.h b/include/openssl/ripemd.h index 900ee317..900ee317 100644 --- a/NorthstarDLL/include/openssl/ripemd.h +++ b/include/openssl/ripemd.h diff --git a/NorthstarDLL/include/openssl/rsa.h b/include/openssl/rsa.h index a55c9727..a55c9727 100644 --- a/NorthstarDLL/include/openssl/rsa.h +++ b/include/openssl/rsa.h diff --git a/NorthstarDLL/include/openssl/rsaerr.h b/include/openssl/rsaerr.h index c58463c7..c58463c7 100644 --- a/NorthstarDLL/include/openssl/rsaerr.h +++ b/include/openssl/rsaerr.h diff --git a/NorthstarDLL/include/openssl/safestack.h b/include/openssl/safestack.h index 159ccf2a..159ccf2a 100644 --- a/NorthstarDLL/include/openssl/safestack.h +++ b/include/openssl/safestack.h diff --git a/NorthstarDLL/include/openssl/safestack.h.in b/include/openssl/safestack.h.in index 6b366079..6b366079 100644 --- a/NorthstarDLL/include/openssl/safestack.h.in +++ b/include/openssl/safestack.h.in diff --git a/NorthstarDLL/include/openssl/seed.h b/include/openssl/seed.h index edb218ae..edb218ae 100644 --- a/NorthstarDLL/include/openssl/seed.h +++ b/include/openssl/seed.h diff --git a/NorthstarDLL/include/openssl/self_test.h b/include/openssl/self_test.h index 77c600a0..77c600a0 100644 --- a/NorthstarDLL/include/openssl/self_test.h +++ b/include/openssl/self_test.h diff --git a/NorthstarDLL/include/openssl/sha.h b/include/openssl/sha.h index 6e65a040..6e65a040 100644 --- a/NorthstarDLL/include/openssl/sha.h +++ b/include/openssl/sha.h diff --git a/NorthstarDLL/include/openssl/srp.h b/include/openssl/srp.h index a86fa5d2..a86fa5d2 100644 --- a/NorthstarDLL/include/openssl/srp.h +++ b/include/openssl/srp.h diff --git a/NorthstarDLL/include/openssl/srp.h.in b/include/openssl/srp.h.in index dfbe845b..dfbe845b 100644 --- a/NorthstarDLL/include/openssl/srp.h.in +++ b/include/openssl/srp.h.in diff --git a/NorthstarDLL/include/openssl/srtp.h b/include/openssl/srtp.h index d64606e5..d64606e5 100644 --- a/NorthstarDLL/include/openssl/srtp.h +++ b/include/openssl/srtp.h diff --git a/NorthstarDLL/include/openssl/ssl.h b/include/openssl/ssl.h index 0763a33c..0763a33c 100644 --- a/NorthstarDLL/include/openssl/ssl.h +++ b/include/openssl/ssl.h diff --git a/NorthstarDLL/include/openssl/ssl.h.in b/include/openssl/ssl.h.in index 9c00eb3d..9c00eb3d 100644 --- a/NorthstarDLL/include/openssl/ssl.h.in +++ b/include/openssl/ssl.h.in diff --git a/NorthstarDLL/include/openssl/ssl2.h b/include/openssl/ssl2.h index 428ead05..428ead05 100644 --- a/NorthstarDLL/include/openssl/ssl2.h +++ b/include/openssl/ssl2.h diff --git a/NorthstarDLL/include/openssl/ssl3.h b/include/openssl/ssl3.h index 49bd51f2..49bd51f2 100644 --- a/NorthstarDLL/include/openssl/ssl3.h +++ b/include/openssl/ssl3.h diff --git a/NorthstarDLL/include/openssl/sslerr.h b/include/openssl/sslerr.h index a4746d70..a4746d70 100644 --- a/NorthstarDLL/include/openssl/sslerr.h +++ b/include/openssl/sslerr.h diff --git a/NorthstarDLL/include/openssl/sslerr_legacy.h b/include/openssl/sslerr_legacy.h index ccf6d3b3..ccf6d3b3 100644 --- a/NorthstarDLL/include/openssl/sslerr_legacy.h +++ b/include/openssl/sslerr_legacy.h diff --git a/NorthstarDLL/include/openssl/stack.h b/include/openssl/stack.h index f0c5c547..f0c5c547 100644 --- a/NorthstarDLL/include/openssl/stack.h +++ b/include/openssl/stack.h diff --git a/NorthstarDLL/include/openssl/store.h b/include/openssl/store.h index 3c1445e0..3c1445e0 100644 --- a/NorthstarDLL/include/openssl/store.h +++ b/include/openssl/store.h diff --git a/NorthstarDLL/include/openssl/storeerr.h b/include/openssl/storeerr.h index 00529c88..00529c88 100644 --- a/NorthstarDLL/include/openssl/storeerr.h +++ b/include/openssl/storeerr.h diff --git a/NorthstarDLL/include/openssl/symhacks.h b/include/openssl/symhacks.h index 816f8f99..816f8f99 100644 --- a/NorthstarDLL/include/openssl/symhacks.h +++ b/include/openssl/symhacks.h diff --git a/NorthstarDLL/include/openssl/tls1.h b/include/openssl/tls1.h index d6e9331f..d6e9331f 100644 --- a/NorthstarDLL/include/openssl/tls1.h +++ b/include/openssl/tls1.h diff --git a/NorthstarDLL/include/openssl/trace.h b/include/openssl/trace.h index 28200133..28200133 100644 --- a/NorthstarDLL/include/openssl/trace.h +++ b/include/openssl/trace.h diff --git a/NorthstarDLL/include/openssl/ts.h b/include/openssl/ts.h index 5136e4e9..5136e4e9 100644 --- a/NorthstarDLL/include/openssl/ts.h +++ b/include/openssl/ts.h diff --git a/NorthstarDLL/include/openssl/tserr.h b/include/openssl/tserr.h index e1b943e4..e1b943e4 100644 --- a/NorthstarDLL/include/openssl/tserr.h +++ b/include/openssl/tserr.h diff --git a/NorthstarDLL/include/openssl/txt_db.h b/include/openssl/txt_db.h index af169a30..af169a30 100644 --- a/NorthstarDLL/include/openssl/txt_db.h +++ b/include/openssl/txt_db.h diff --git a/NorthstarDLL/include/openssl/types.h b/include/openssl/types.h index de9f1665..de9f1665 100644 --- a/NorthstarDLL/include/openssl/types.h +++ b/include/openssl/types.h diff --git a/NorthstarDLL/include/openssl/ui.h b/include/openssl/ui.h index 835b0eba..835b0eba 100644 --- a/NorthstarDLL/include/openssl/ui.h +++ b/include/openssl/ui.h diff --git a/NorthstarDLL/include/openssl/ui.h.in b/include/openssl/ui.h.in index eb9a580f..eb9a580f 100644 --- a/NorthstarDLL/include/openssl/ui.h.in +++ b/include/openssl/ui.h.in diff --git a/NorthstarDLL/include/openssl/uierr.h b/include/openssl/uierr.h index 473b04ed..473b04ed 100644 --- a/NorthstarDLL/include/openssl/uierr.h +++ b/include/openssl/uierr.h diff --git a/NorthstarDLL/include/openssl/whrlpool.h b/include/openssl/whrlpool.h index 05ba4632..05ba4632 100644 --- a/NorthstarDLL/include/openssl/whrlpool.h +++ b/include/openssl/whrlpool.h diff --git a/NorthstarDLL/include/openssl/x509.h b/include/openssl/x509.h index db57a9bf..db57a9bf 100644 --- a/NorthstarDLL/include/openssl/x509.h +++ b/include/openssl/x509.h diff --git a/NorthstarDLL/include/openssl/x509.h.in b/include/openssl/x509.h.in index b4efbb55..b4efbb55 100644 --- a/NorthstarDLL/include/openssl/x509.h.in +++ b/include/openssl/x509.h.in diff --git a/NorthstarDLL/include/openssl/x509_vfy.h b/include/openssl/x509_vfy.h index e04df0d3..e04df0d3 100644 --- a/NorthstarDLL/include/openssl/x509_vfy.h +++ b/include/openssl/x509_vfy.h diff --git a/NorthstarDLL/include/openssl/x509_vfy.h.in b/include/openssl/x509_vfy.h.in index 80f18bd7..80f18bd7 100644 --- a/NorthstarDLL/include/openssl/x509_vfy.h.in +++ b/include/openssl/x509_vfy.h.in diff --git a/NorthstarDLL/include/openssl/x509err.h b/include/openssl/x509err.h index a56facd4..a56facd4 100644 --- a/NorthstarDLL/include/openssl/x509err.h +++ b/include/openssl/x509err.h diff --git a/NorthstarDLL/include/openssl/x509v3.h b/include/openssl/x509v3.h index 78c390b3..78c390b3 100644 --- a/NorthstarDLL/include/openssl/x509v3.h +++ b/include/openssl/x509v3.h diff --git a/NorthstarDLL/include/openssl/x509v3.h.in b/include/openssl/x509v3.h.in index d00a66a3..d00a66a3 100644 --- a/NorthstarDLL/include/openssl/x509v3.h.in +++ b/include/openssl/x509v3.h.in diff --git a/NorthstarDLL/include/openssl/x509v3err.h b/include/openssl/x509v3err.h index 1ae3a562..1ae3a562 100644 --- a/NorthstarDLL/include/openssl/x509v3err.h +++ b/include/openssl/x509v3err.h diff --git a/NorthstarDLL/include/rapidjson/allocators.h b/include/rapidjson/allocators.h index 98affe03..98affe03 100644 --- a/NorthstarDLL/include/rapidjson/allocators.h +++ b/include/rapidjson/allocators.h diff --git a/NorthstarDLL/include/rapidjson/document.h b/include/rapidjson/document.h index e3e20dfb..e3e20dfb 100644 --- a/NorthstarDLL/include/rapidjson/document.h +++ b/include/rapidjson/document.h diff --git a/NorthstarDLL/include/rapidjson/encodedstream.h b/include/rapidjson/encodedstream.h index 14506838..14506838 100644 --- a/NorthstarDLL/include/rapidjson/encodedstream.h +++ b/include/rapidjson/encodedstream.h diff --git a/NorthstarDLL/include/rapidjson/encodings.h b/include/rapidjson/encodings.h index baa7c2b1..baa7c2b1 100644 --- a/NorthstarDLL/include/rapidjson/encodings.h +++ b/include/rapidjson/encodings.h diff --git a/NorthstarDLL/include/rapidjson/error/en.h b/include/rapidjson/error/en.h index 2db838bf..2db838bf 100644 --- a/NorthstarDLL/include/rapidjson/error/en.h +++ b/include/rapidjson/error/en.h diff --git a/NorthstarDLL/include/rapidjson/error/error.h b/include/rapidjson/error/error.h index 95cb31a7..95cb31a7 100644 --- a/NorthstarDLL/include/rapidjson/error/error.h +++ b/include/rapidjson/error/error.h diff --git a/NorthstarDLL/include/rapidjson/filereadstream.h b/include/rapidjson/filereadstream.h index b56ea13b..b56ea13b 100644 --- a/NorthstarDLL/include/rapidjson/filereadstream.h +++ b/include/rapidjson/filereadstream.h diff --git a/NorthstarDLL/include/rapidjson/filewritestream.h b/include/rapidjson/filewritestream.h index 6378dd60..6378dd60 100644 --- a/NorthstarDLL/include/rapidjson/filewritestream.h +++ b/include/rapidjson/filewritestream.h diff --git a/NorthstarDLL/include/rapidjson/fwd.h b/include/rapidjson/fwd.h index e8104e84..e8104e84 100644 --- a/NorthstarDLL/include/rapidjson/fwd.h +++ b/include/rapidjson/fwd.h diff --git a/NorthstarDLL/include/rapidjson/internal/biginteger.h b/include/rapidjson/internal/biginteger.h index 9d3e88c9..9d3e88c9 100644 --- a/NorthstarDLL/include/rapidjson/internal/biginteger.h +++ b/include/rapidjson/internal/biginteger.h diff --git a/NorthstarDLL/include/rapidjson/internal/diyfp.h b/include/rapidjson/internal/diyfp.h index c9fefdc6..c9fefdc6 100644 --- a/NorthstarDLL/include/rapidjson/internal/diyfp.h +++ b/include/rapidjson/internal/diyfp.h diff --git a/NorthstarDLL/include/rapidjson/internal/dtoa.h b/include/rapidjson/internal/dtoa.h index 8d6350e6..8d6350e6 100644 --- a/NorthstarDLL/include/rapidjson/internal/dtoa.h +++ b/include/rapidjson/internal/dtoa.h diff --git a/NorthstarDLL/include/rapidjson/internal/ieee754.h b/include/rapidjson/internal/ieee754.h index 82bb0b99..82bb0b99 100644 --- a/NorthstarDLL/include/rapidjson/internal/ieee754.h +++ b/include/rapidjson/internal/ieee754.h diff --git a/NorthstarDLL/include/rapidjson/internal/itoa.h b/include/rapidjson/internal/itoa.h index 01a4e7e7..01a4e7e7 100644 --- a/NorthstarDLL/include/rapidjson/internal/itoa.h +++ b/include/rapidjson/internal/itoa.h diff --git a/NorthstarDLL/include/rapidjson/internal/meta.h b/include/rapidjson/internal/meta.h index 5a9aaa42..5a9aaa42 100644 --- a/NorthstarDLL/include/rapidjson/internal/meta.h +++ b/include/rapidjson/internal/meta.h diff --git a/NorthstarDLL/include/rapidjson/internal/pow10.h b/include/rapidjson/internal/pow10.h index 02f475d7..02f475d7 100644 --- a/NorthstarDLL/include/rapidjson/internal/pow10.h +++ b/include/rapidjson/internal/pow10.h diff --git a/NorthstarDLL/include/rapidjson/internal/regex.h b/include/rapidjson/internal/regex.h index 422a5240..422a5240 100644 --- a/NorthstarDLL/include/rapidjson/internal/regex.h +++ b/include/rapidjson/internal/regex.h diff --git a/NorthstarDLL/include/rapidjson/internal/stack.h b/include/rapidjson/internal/stack.h index 022c9aab..022c9aab 100644 --- a/NorthstarDLL/include/rapidjson/internal/stack.h +++ b/include/rapidjson/internal/stack.h diff --git a/NorthstarDLL/include/rapidjson/internal/strfunc.h b/include/rapidjson/internal/strfunc.h index 2edfae52..2edfae52 100644 --- a/NorthstarDLL/include/rapidjson/internal/strfunc.h +++ b/include/rapidjson/internal/strfunc.h diff --git a/NorthstarDLL/include/rapidjson/internal/strtod.h b/include/rapidjson/internal/strtod.h index 289c413b..289c413b 100644 --- a/NorthstarDLL/include/rapidjson/internal/strtod.h +++ b/include/rapidjson/internal/strtod.h diff --git a/NorthstarDLL/include/rapidjson/internal/swap.h b/include/rapidjson/internal/swap.h index 666e49f9..666e49f9 100644 --- a/NorthstarDLL/include/rapidjson/internal/swap.h +++ b/include/rapidjson/internal/swap.h diff --git a/NorthstarDLL/include/rapidjson/istreamwrapper.h b/include/rapidjson/istreamwrapper.h index f5fe2897..f5fe2897 100644 --- a/NorthstarDLL/include/rapidjson/istreamwrapper.h +++ b/include/rapidjson/istreamwrapper.h diff --git a/NorthstarDLL/include/rapidjson/memorybuffer.h b/include/rapidjson/memorybuffer.h index 39bee1de..39bee1de 100644 --- a/NorthstarDLL/include/rapidjson/memorybuffer.h +++ b/include/rapidjson/memorybuffer.h diff --git a/NorthstarDLL/include/rapidjson/memorystream.h b/include/rapidjson/memorystream.h index 1d71d8a4..1d71d8a4 100644 --- a/NorthstarDLL/include/rapidjson/memorystream.h +++ b/include/rapidjson/memorystream.h diff --git a/NorthstarDLL/include/rapidjson/msinttypes/inttypes.h b/include/rapidjson/msinttypes/inttypes.h index 18111286..18111286 100644 --- a/NorthstarDLL/include/rapidjson/msinttypes/inttypes.h +++ b/include/rapidjson/msinttypes/inttypes.h diff --git a/NorthstarDLL/include/rapidjson/msinttypes/stdint.h b/include/rapidjson/msinttypes/stdint.h index 3d4477b9..3d4477b9 100644 --- a/NorthstarDLL/include/rapidjson/msinttypes/stdint.h +++ b/include/rapidjson/msinttypes/stdint.h diff --git a/NorthstarDLL/include/rapidjson/ostreamwrapper.h b/include/rapidjson/ostreamwrapper.h index 6f4667c0..6f4667c0 100644 --- a/NorthstarDLL/include/rapidjson/ostreamwrapper.h +++ b/include/rapidjson/ostreamwrapper.h diff --git a/NorthstarDLL/include/rapidjson/pointer.h b/include/rapidjson/pointer.h index 0206ac1c..0206ac1c 100644 --- a/NorthstarDLL/include/rapidjson/pointer.h +++ b/include/rapidjson/pointer.h diff --git a/NorthstarDLL/include/rapidjson/prettywriter.h b/include/rapidjson/prettywriter.h index 0dcb0fee..0dcb0fee 100644 --- a/NorthstarDLL/include/rapidjson/prettywriter.h +++ b/include/rapidjson/prettywriter.h diff --git a/NorthstarDLL/include/rapidjson/rapidjson.h b/include/rapidjson/rapidjson.h index 053b2ce4..053b2ce4 100644 --- a/NorthstarDLL/include/rapidjson/rapidjson.h +++ b/include/rapidjson/rapidjson.h diff --git a/NorthstarDLL/include/rapidjson/reader.h b/include/rapidjson/reader.h index 19f8849b..19f8849b 100644 --- a/NorthstarDLL/include/rapidjson/reader.h +++ b/include/rapidjson/reader.h diff --git a/NorthstarDLL/include/rapidjson/schema.h b/include/rapidjson/schema.h index b182aa27..b182aa27 100644 --- a/NorthstarDLL/include/rapidjson/schema.h +++ b/include/rapidjson/schema.h diff --git a/NorthstarDLL/include/rapidjson/stream.h b/include/rapidjson/stream.h index fef82c25..fef82c25 100644 --- a/NorthstarDLL/include/rapidjson/stream.h +++ b/include/rapidjson/stream.h diff --git a/NorthstarDLL/include/rapidjson/stringbuffer.h b/include/rapidjson/stringbuffer.h index 78f34d20..78f34d20 100644 --- a/NorthstarDLL/include/rapidjson/stringbuffer.h +++ b/include/rapidjson/stringbuffer.h diff --git a/NorthstarDLL/include/rapidjson/writer.h b/include/rapidjson/writer.h index 94f22dd5..94f22dd5 100644 --- a/NorthstarDLL/include/rapidjson/writer.h +++ b/include/rapidjson/writer.h diff --git a/NorthstarDLL/include/spdlog/async.h b/include/spdlog/async.h index f7956305..f7956305 100644 --- a/NorthstarDLL/include/spdlog/async.h +++ b/include/spdlog/async.h diff --git a/NorthstarDLL/include/spdlog/async_logger-inl.h b/include/spdlog/async_logger-inl.h index f8c9694c..f8c9694c 100644 --- a/NorthstarDLL/include/spdlog/async_logger-inl.h +++ b/include/spdlog/async_logger-inl.h diff --git a/NorthstarDLL/include/spdlog/async_logger.h b/include/spdlog/async_logger.h index 6f299672..6f299672 100644 --- a/NorthstarDLL/include/spdlog/async_logger.h +++ b/include/spdlog/async_logger.h diff --git a/NorthstarDLL/include/spdlog/cfg/argv.h b/include/spdlog/cfg/argv.h index 36d9f1c4..36d9f1c4 100644 --- a/NorthstarDLL/include/spdlog/cfg/argv.h +++ b/include/spdlog/cfg/argv.h diff --git a/NorthstarDLL/include/spdlog/cfg/env.h b/include/spdlog/cfg/env.h index 1f39ebbb..1f39ebbb 100644 --- a/NorthstarDLL/include/spdlog/cfg/env.h +++ b/include/spdlog/cfg/env.h diff --git a/NorthstarDLL/include/spdlog/cfg/helpers-inl.h b/include/spdlog/cfg/helpers-inl.h index 9e4daede..9e4daede 100644 --- a/NorthstarDLL/include/spdlog/cfg/helpers-inl.h +++ b/include/spdlog/cfg/helpers-inl.h diff --git a/NorthstarDLL/include/spdlog/cfg/helpers.h b/include/spdlog/cfg/helpers.h index a795f39a..a795f39a 100644 --- a/NorthstarDLL/include/spdlog/cfg/helpers.h +++ b/include/spdlog/cfg/helpers.h diff --git a/NorthstarDLL/include/spdlog/common-inl.h b/include/spdlog/common-inl.h index 378efe60..378efe60 100644 --- a/NorthstarDLL/include/spdlog/common-inl.h +++ b/include/spdlog/common-inl.h diff --git a/NorthstarDLL/include/spdlog/common.h b/include/spdlog/common.h index fb9a3660..fb9a3660 100644 --- a/NorthstarDLL/include/spdlog/common.h +++ b/include/spdlog/common.h diff --git a/NorthstarDLL/include/spdlog/details/backtracer-inl.h b/include/spdlog/details/backtracer-inl.h index 21553c26..21553c26 100644 --- a/NorthstarDLL/include/spdlog/details/backtracer-inl.h +++ b/include/spdlog/details/backtracer-inl.h diff --git a/NorthstarDLL/include/spdlog/details/backtracer.h b/include/spdlog/details/backtracer.h index 1da5d4c7..1da5d4c7 100644 --- a/NorthstarDLL/include/spdlog/details/backtracer.h +++ b/include/spdlog/details/backtracer.h diff --git a/NorthstarDLL/include/spdlog/details/circular_q.h b/include/spdlog/details/circular_q.h index 1f2712e7..1f2712e7 100644 --- a/NorthstarDLL/include/spdlog/details/circular_q.h +++ b/include/spdlog/details/circular_q.h diff --git a/NorthstarDLL/include/spdlog/details/console_globals.h b/include/spdlog/details/console_globals.h index 665201dd..665201dd 100644 --- a/NorthstarDLL/include/spdlog/details/console_globals.h +++ b/include/spdlog/details/console_globals.h diff --git a/NorthstarDLL/include/spdlog/details/file_helper-inl.h b/include/spdlog/details/file_helper-inl.h index 30f3cf55..30f3cf55 100644 --- a/NorthstarDLL/include/spdlog/details/file_helper-inl.h +++ b/include/spdlog/details/file_helper-inl.h diff --git a/NorthstarDLL/include/spdlog/details/file_helper.h b/include/spdlog/details/file_helper.h index 5395d9cb..5395d9cb 100644 --- a/NorthstarDLL/include/spdlog/details/file_helper.h +++ b/include/spdlog/details/file_helper.h diff --git a/NorthstarDLL/include/spdlog/details/fmt_helper.h b/include/spdlog/details/fmt_helper.h index 5dc311a0..5dc311a0 100644 --- a/NorthstarDLL/include/spdlog/details/fmt_helper.h +++ b/include/spdlog/details/fmt_helper.h diff --git a/NorthstarDLL/include/spdlog/details/log_msg-inl.h b/include/spdlog/details/log_msg-inl.h index af11e0da..af11e0da 100644 --- a/NorthstarDLL/include/spdlog/details/log_msg-inl.h +++ b/include/spdlog/details/log_msg-inl.h diff --git a/NorthstarDLL/include/spdlog/details/log_msg.h b/include/spdlog/details/log_msg.h index 834ca4df..834ca4df 100644 --- a/NorthstarDLL/include/spdlog/details/log_msg.h +++ b/include/spdlog/details/log_msg.h diff --git a/NorthstarDLL/include/spdlog/details/log_msg_buffer-inl.h b/include/spdlog/details/log_msg_buffer-inl.h index ca9429bb..ca9429bb 100644 --- a/NorthstarDLL/include/spdlog/details/log_msg_buffer-inl.h +++ b/include/spdlog/details/log_msg_buffer-inl.h diff --git a/NorthstarDLL/include/spdlog/details/log_msg_buffer.h b/include/spdlog/details/log_msg_buffer.h index 4410110f..4410110f 100644 --- a/NorthstarDLL/include/spdlog/details/log_msg_buffer.h +++ b/include/spdlog/details/log_msg_buffer.h diff --git a/NorthstarDLL/include/spdlog/details/mpmc_blocking_q.h b/include/spdlog/details/mpmc_blocking_q.h index 5c3cca76..5c3cca76 100644 --- a/NorthstarDLL/include/spdlog/details/mpmc_blocking_q.h +++ b/include/spdlog/details/mpmc_blocking_q.h diff --git a/NorthstarDLL/include/spdlog/details/null_mutex.h b/include/spdlog/details/null_mutex.h index 83533d4f..83533d4f 100644 --- a/NorthstarDLL/include/spdlog/details/null_mutex.h +++ b/include/spdlog/details/null_mutex.h diff --git a/NorthstarDLL/include/spdlog/details/os-inl.h b/include/spdlog/details/os-inl.h index a701e13f..a701e13f 100644 --- a/NorthstarDLL/include/spdlog/details/os-inl.h +++ b/include/spdlog/details/os-inl.h diff --git a/NorthstarDLL/include/spdlog/details/os.h b/include/spdlog/details/os.h index 9fda1447..9fda1447 100644 --- a/NorthstarDLL/include/spdlog/details/os.h +++ b/include/spdlog/details/os.h diff --git a/NorthstarDLL/include/spdlog/details/periodic_worker-inl.h b/include/spdlog/details/periodic_worker-inl.h index 1d794994..1d794994 100644 --- a/NorthstarDLL/include/spdlog/details/periodic_worker-inl.h +++ b/include/spdlog/details/periodic_worker-inl.h diff --git a/NorthstarDLL/include/spdlog/details/periodic_worker.h b/include/spdlog/details/periodic_worker.h index 42373665..42373665 100644 --- a/NorthstarDLL/include/spdlog/details/periodic_worker.h +++ b/include/spdlog/details/periodic_worker.h diff --git a/NorthstarDLL/include/spdlog/details/registry-inl.h b/include/spdlog/details/registry-inl.h index a60faabc..a60faabc 100644 --- a/NorthstarDLL/include/spdlog/details/registry-inl.h +++ b/include/spdlog/details/registry-inl.h diff --git a/NorthstarDLL/include/spdlog/details/registry.h b/include/spdlog/details/registry.h index b069c3f5..b069c3f5 100644 --- a/NorthstarDLL/include/spdlog/details/registry.h +++ b/include/spdlog/details/registry.h diff --git a/NorthstarDLL/include/spdlog/details/synchronous_factory.h b/include/spdlog/details/synchronous_factory.h index e1e42268..e1e42268 100644 --- a/NorthstarDLL/include/spdlog/details/synchronous_factory.h +++ b/include/spdlog/details/synchronous_factory.h diff --git a/NorthstarDLL/include/spdlog/details/tcp_client-windows.h b/include/spdlog/details/tcp_client-windows.h index 7ee72927..7ee72927 100644 --- a/NorthstarDLL/include/spdlog/details/tcp_client-windows.h +++ b/include/spdlog/details/tcp_client-windows.h diff --git a/NorthstarDLL/include/spdlog/details/tcp_client.h b/include/spdlog/details/tcp_client.h index 9f3bb99e..9f3bb99e 100644 --- a/NorthstarDLL/include/spdlog/details/tcp_client.h +++ b/include/spdlog/details/tcp_client.h diff --git a/NorthstarDLL/include/spdlog/details/thread_pool-inl.h b/include/spdlog/details/thread_pool-inl.h index c1df4361..c1df4361 100644 --- a/NorthstarDLL/include/spdlog/details/thread_pool-inl.h +++ b/include/spdlog/details/thread_pool-inl.h diff --git a/NorthstarDLL/include/spdlog/details/thread_pool.h b/include/spdlog/details/thread_pool.h index 61e25252..61e25252 100644 --- a/NorthstarDLL/include/spdlog/details/thread_pool.h +++ b/include/spdlog/details/thread_pool.h diff --git a/NorthstarDLL/include/spdlog/details/windows_include.h b/include/spdlog/details/windows_include.h index 6a2f14f9..6a2f14f9 100644 --- a/NorthstarDLL/include/spdlog/details/windows_include.h +++ b/include/spdlog/details/windows_include.h diff --git a/NorthstarDLL/include/spdlog/fmt/bin_to_hex.h b/include/spdlog/fmt/bin_to_hex.h index 1e2b054b..1e2b054b 100644 --- a/NorthstarDLL/include/spdlog/fmt/bin_to_hex.h +++ b/include/spdlog/fmt/bin_to_hex.h diff --git a/NorthstarDLL/include/spdlog/fmt/bundled/LICENSE.rst b/include/spdlog/fmt/bundled/LICENSE.rst index f0ec3db4..f0ec3db4 100644 --- a/NorthstarDLL/include/spdlog/fmt/bundled/LICENSE.rst +++ b/include/spdlog/fmt/bundled/LICENSE.rst diff --git a/NorthstarDLL/include/spdlog/fmt/bundled/chrono.h b/include/spdlog/fmt/bundled/chrono.h index bdfe2aa0..bdfe2aa0 100644 --- a/NorthstarDLL/include/spdlog/fmt/bundled/chrono.h +++ b/include/spdlog/fmt/bundled/chrono.h diff --git a/NorthstarDLL/include/spdlog/fmt/bundled/color.h b/include/spdlog/fmt/bundled/color.h index 94e3419d..94e3419d 100644 --- a/NorthstarDLL/include/spdlog/fmt/bundled/color.h +++ b/include/spdlog/fmt/bundled/color.h diff --git a/NorthstarDLL/include/spdlog/fmt/bundled/compile.h b/include/spdlog/fmt/bundled/compile.h index 3a33b020..3a33b020 100644 --- a/NorthstarDLL/include/spdlog/fmt/bundled/compile.h +++ b/include/spdlog/fmt/bundled/compile.h diff --git a/NorthstarDLL/include/spdlog/fmt/bundled/core.h b/include/spdlog/fmt/bundled/core.h index 0a81e0cc..0a81e0cc 100644 --- a/NorthstarDLL/include/spdlog/fmt/bundled/core.h +++ b/include/spdlog/fmt/bundled/core.h diff --git a/NorthstarDLL/include/spdlog/fmt/bundled/format-inl.h b/include/spdlog/fmt/bundled/format-inl.h index 8f2fe735..8f2fe735 100644 --- a/NorthstarDLL/include/spdlog/fmt/bundled/format-inl.h +++ b/include/spdlog/fmt/bundled/format-inl.h diff --git a/NorthstarDLL/include/spdlog/fmt/bundled/format.h b/include/spdlog/fmt/bundled/format.h index 1a037b02..1a037b02 100644 --- a/NorthstarDLL/include/spdlog/fmt/bundled/format.h +++ b/include/spdlog/fmt/bundled/format.h diff --git a/NorthstarDLL/include/spdlog/fmt/bundled/locale.h b/include/spdlog/fmt/bundled/locale.h index 7301bf92..7301bf92 100644 --- a/NorthstarDLL/include/spdlog/fmt/bundled/locale.h +++ b/include/spdlog/fmt/bundled/locale.h diff --git a/NorthstarDLL/include/spdlog/fmt/bundled/os.h b/include/spdlog/fmt/bundled/os.h index d44ea0c9..d44ea0c9 100644 --- a/NorthstarDLL/include/spdlog/fmt/bundled/os.h +++ b/include/spdlog/fmt/bundled/os.h diff --git a/NorthstarDLL/include/spdlog/fmt/bundled/ostream.h b/include/spdlog/fmt/bundled/ostream.h index 29c58ec1..29c58ec1 100644 --- a/NorthstarDLL/include/spdlog/fmt/bundled/ostream.h +++ b/include/spdlog/fmt/bundled/ostream.h diff --git a/NorthstarDLL/include/spdlog/fmt/bundled/posix.h b/include/spdlog/fmt/bundled/posix.h index da19e9d5..da19e9d5 100644 --- a/NorthstarDLL/include/spdlog/fmt/bundled/posix.h +++ b/include/spdlog/fmt/bundled/posix.h diff --git a/NorthstarDLL/include/spdlog/fmt/bundled/printf.h b/include/spdlog/fmt/bundled/printf.h index 8c28ac23..8c28ac23 100644 --- a/NorthstarDLL/include/spdlog/fmt/bundled/printf.h +++ b/include/spdlog/fmt/bundled/printf.h diff --git a/NorthstarDLL/include/spdlog/fmt/bundled/ranges.h b/include/spdlog/fmt/bundled/ranges.h index 632f0494..632f0494 100644 --- a/NorthstarDLL/include/spdlog/fmt/bundled/ranges.h +++ b/include/spdlog/fmt/bundled/ranges.h diff --git a/NorthstarDLL/include/spdlog/fmt/chrono.h b/include/spdlog/fmt/chrono.h index e1fb7a06..e1fb7a06 100644 --- a/NorthstarDLL/include/spdlog/fmt/chrono.h +++ b/include/spdlog/fmt/chrono.h diff --git a/NorthstarDLL/include/spdlog/fmt/fmt.h b/include/spdlog/fmt/fmt.h index ec10ac33..ec10ac33 100644 --- a/NorthstarDLL/include/spdlog/fmt/fmt.h +++ b/include/spdlog/fmt/fmt.h diff --git a/NorthstarDLL/include/spdlog/fmt/ostr.h b/include/spdlog/fmt/ostr.h index f82eb679..f82eb679 100644 --- a/NorthstarDLL/include/spdlog/fmt/ostr.h +++ b/include/spdlog/fmt/ostr.h diff --git a/NorthstarDLL/include/spdlog/formatter.h b/include/spdlog/formatter.h index 5086fb21..5086fb21 100644 --- a/NorthstarDLL/include/spdlog/formatter.h +++ b/include/spdlog/formatter.h diff --git a/NorthstarDLL/include/spdlog/fwd.h b/include/spdlog/fwd.h index cc05ddd4..cc05ddd4 100644 --- a/NorthstarDLL/include/spdlog/fwd.h +++ b/include/spdlog/fwd.h diff --git a/NorthstarDLL/include/spdlog/logger-inl.h b/include/spdlog/logger-inl.h index d01c08da..d01c08da 100644 --- a/NorthstarDLL/include/spdlog/logger-inl.h +++ b/include/spdlog/logger-inl.h diff --git a/NorthstarDLL/include/spdlog/logger.h b/include/spdlog/logger.h index a34c5221..a34c5221 100644 --- a/NorthstarDLL/include/spdlog/logger.h +++ b/include/spdlog/logger.h diff --git a/NorthstarDLL/include/spdlog/pattern_formatter-inl.h b/include/spdlog/pattern_formatter-inl.h index 54346e1e..54346e1e 100644 --- a/NorthstarDLL/include/spdlog/pattern_formatter-inl.h +++ b/include/spdlog/pattern_formatter-inl.h diff --git a/NorthstarDLL/include/spdlog/pattern_formatter.h b/include/spdlog/pattern_formatter.h index bc13ae10..bc13ae10 100644 --- a/NorthstarDLL/include/spdlog/pattern_formatter.h +++ b/include/spdlog/pattern_formatter.h diff --git a/NorthstarDLL/include/spdlog/sinks/android_sink.h b/include/spdlog/sinks/android_sink.h index 659beabb..659beabb 100644 --- a/NorthstarDLL/include/spdlog/sinks/android_sink.h +++ b/include/spdlog/sinks/android_sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/ansicolor_sink-inl.h b/include/spdlog/sinks/ansicolor_sink-inl.h index 61c0a719..61c0a719 100644 --- a/NorthstarDLL/include/spdlog/sinks/ansicolor_sink-inl.h +++ b/include/spdlog/sinks/ansicolor_sink-inl.h diff --git a/NorthstarDLL/include/spdlog/sinks/ansicolor_sink.h b/include/spdlog/sinks/ansicolor_sink.h index 4438f706..4438f706 100644 --- a/NorthstarDLL/include/spdlog/sinks/ansicolor_sink.h +++ b/include/spdlog/sinks/ansicolor_sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/base_sink-inl.h b/include/spdlog/sinks/base_sink-inl.h index b15fb0e6..b15fb0e6 100644 --- a/NorthstarDLL/include/spdlog/sinks/base_sink-inl.h +++ b/include/spdlog/sinks/base_sink-inl.h diff --git a/NorthstarDLL/include/spdlog/sinks/base_sink.h b/include/spdlog/sinks/base_sink.h index bf5072f8..bf5072f8 100644 --- a/NorthstarDLL/include/spdlog/sinks/base_sink.h +++ b/include/spdlog/sinks/base_sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/basic_file_sink-inl.h b/include/spdlog/sinks/basic_file_sink-inl.h index 1260d15c..1260d15c 100644 --- a/NorthstarDLL/include/spdlog/sinks/basic_file_sink-inl.h +++ b/include/spdlog/sinks/basic_file_sink-inl.h diff --git a/NorthstarDLL/include/spdlog/sinks/basic_file_sink.h b/include/spdlog/sinks/basic_file_sink.h index 4a742624..4a742624 100644 --- a/NorthstarDLL/include/spdlog/sinks/basic_file_sink.h +++ b/include/spdlog/sinks/basic_file_sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/daily_file_sink.h b/include/spdlog/sinks/daily_file_sink.h index 16be821a..16be821a 100644 --- a/NorthstarDLL/include/spdlog/sinks/daily_file_sink.h +++ b/include/spdlog/sinks/daily_file_sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/dist_sink.h b/include/spdlog/sinks/dist_sink.h index 8fccb4ee..8fccb4ee 100644 --- a/NorthstarDLL/include/spdlog/sinks/dist_sink.h +++ b/include/spdlog/sinks/dist_sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/dup_filter_sink.h b/include/spdlog/sinks/dup_filter_sink.h index c9a08d68..c9a08d68 100644 --- a/NorthstarDLL/include/spdlog/sinks/dup_filter_sink.h +++ b/include/spdlog/sinks/dup_filter_sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/hourly_file_sink.h b/include/spdlog/sinks/hourly_file_sink.h index f5e34366..f5e34366 100644 --- a/NorthstarDLL/include/spdlog/sinks/hourly_file_sink.h +++ b/include/spdlog/sinks/hourly_file_sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/msvc_sink.h b/include/spdlog/sinks/msvc_sink.h index 8fec428d..8fec428d 100644 --- a/NorthstarDLL/include/spdlog/sinks/msvc_sink.h +++ b/include/spdlog/sinks/msvc_sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/null_sink.h b/include/spdlog/sinks/null_sink.h index eb832801..eb832801 100644 --- a/NorthstarDLL/include/spdlog/sinks/null_sink.h +++ b/include/spdlog/sinks/null_sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/ostream_sink.h b/include/spdlog/sinks/ostream_sink.h index 95c1e962..95c1e962 100644 --- a/NorthstarDLL/include/spdlog/sinks/ostream_sink.h +++ b/include/spdlog/sinks/ostream_sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/ringbuffer_sink.h b/include/spdlog/sinks/ringbuffer_sink.h index 1ee3f691..1ee3f691 100644 --- a/NorthstarDLL/include/spdlog/sinks/ringbuffer_sink.h +++ b/include/spdlog/sinks/ringbuffer_sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/rotating_file_sink-inl.h b/include/spdlog/sinks/rotating_file_sink-inl.h index d715ebf3..d715ebf3 100644 --- a/NorthstarDLL/include/spdlog/sinks/rotating_file_sink-inl.h +++ b/include/spdlog/sinks/rotating_file_sink-inl.h diff --git a/NorthstarDLL/include/spdlog/sinks/rotating_file_sink.h b/include/spdlog/sinks/rotating_file_sink.h index e1e85a7d..e1e85a7d 100644 --- a/NorthstarDLL/include/spdlog/sinks/rotating_file_sink.h +++ b/include/spdlog/sinks/rotating_file_sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/sink-inl.h b/include/spdlog/sinks/sink-inl.h index a8dd6a6c..a8dd6a6c 100644 --- a/NorthstarDLL/include/spdlog/sinks/sink-inl.h +++ b/include/spdlog/sinks/sink-inl.h diff --git a/NorthstarDLL/include/spdlog/sinks/sink.h b/include/spdlog/sinks/sink.h index be99744d..be99744d 100644 --- a/NorthstarDLL/include/spdlog/sinks/sink.h +++ b/include/spdlog/sinks/sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/stdout_color_sinks-inl.h b/include/spdlog/sinks/stdout_color_sinks-inl.h index 935f1ccc..935f1ccc 100644 --- a/NorthstarDLL/include/spdlog/sinks/stdout_color_sinks-inl.h +++ b/include/spdlog/sinks/stdout_color_sinks-inl.h diff --git a/NorthstarDLL/include/spdlog/sinks/stdout_color_sinks.h b/include/spdlog/sinks/stdout_color_sinks.h index e67aa91b..e67aa91b 100644 --- a/NorthstarDLL/include/spdlog/sinks/stdout_color_sinks.h +++ b/include/spdlog/sinks/stdout_color_sinks.h diff --git a/NorthstarDLL/include/spdlog/sinks/stdout_sinks-inl.h b/include/spdlog/sinks/stdout_sinks-inl.h index 25192607..25192607 100644 --- a/NorthstarDLL/include/spdlog/sinks/stdout_sinks-inl.h +++ b/include/spdlog/sinks/stdout_sinks-inl.h diff --git a/NorthstarDLL/include/spdlog/sinks/stdout_sinks.h b/include/spdlog/sinks/stdout_sinks.h index 40688a46..40688a46 100644 --- a/NorthstarDLL/include/spdlog/sinks/stdout_sinks.h +++ b/include/spdlog/sinks/stdout_sinks.h diff --git a/NorthstarDLL/include/spdlog/sinks/syslog_sink.h b/include/spdlog/sinks/syslog_sink.h index 7c38fcb5..7c38fcb5 100644 --- a/NorthstarDLL/include/spdlog/sinks/syslog_sink.h +++ b/include/spdlog/sinks/syslog_sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/systemd_sink.h b/include/spdlog/sinks/systemd_sink.h index d23824b8..d23824b8 100644 --- a/NorthstarDLL/include/spdlog/sinks/systemd_sink.h +++ b/include/spdlog/sinks/systemd_sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/tcp_sink.h b/include/spdlog/sinks/tcp_sink.h index 9dd9e51d..9dd9e51d 100644 --- a/NorthstarDLL/include/spdlog/sinks/tcp_sink.h +++ b/include/spdlog/sinks/tcp_sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/win_eventlog_sink.h b/include/spdlog/sinks/win_eventlog_sink.h index 68170dd9..68170dd9 100644 --- a/NorthstarDLL/include/spdlog/sinks/win_eventlog_sink.h +++ b/include/spdlog/sinks/win_eventlog_sink.h diff --git a/NorthstarDLL/include/spdlog/sinks/wincolor_sink-inl.h b/include/spdlog/sinks/wincolor_sink-inl.h index e2676d3c..e2676d3c 100644 --- a/NorthstarDLL/include/spdlog/sinks/wincolor_sink-inl.h +++ b/include/spdlog/sinks/wincolor_sink-inl.h diff --git a/NorthstarDLL/include/spdlog/sinks/wincolor_sink.h b/include/spdlog/sinks/wincolor_sink.h index a82f1b24..a82f1b24 100644 --- a/NorthstarDLL/include/spdlog/sinks/wincolor_sink.h +++ b/include/spdlog/sinks/wincolor_sink.h diff --git a/NorthstarDLL/include/spdlog/spdlog-inl.h b/include/spdlog/spdlog-inl.h index 96e09f59..96e09f59 100644 --- a/NorthstarDLL/include/spdlog/spdlog-inl.h +++ b/include/spdlog/spdlog-inl.h diff --git a/NorthstarDLL/include/spdlog/spdlog.h b/include/spdlog/spdlog.h index bb130d94..bb130d94 100644 --- a/NorthstarDLL/include/spdlog/spdlog.h +++ b/include/spdlog/spdlog.h diff --git a/NorthstarDLL/include/spdlog/stopwatch.h b/include/spdlog/stopwatch.h index bb976b19..bb976b19 100644 --- a/NorthstarDLL/include/spdlog/stopwatch.h +++ b/include/spdlog/stopwatch.h diff --git a/NorthstarDLL/include/spdlog/tweakme.h b/include/spdlog/tweakme.h index 31e417ab..31e417ab 100644 --- a/NorthstarDLL/include/spdlog/tweakme.h +++ b/include/spdlog/tweakme.h diff --git a/NorthstarDLL/include/spdlog/version.h b/include/spdlog/version.h index 828f78cb..828f78cb 100644 --- a/NorthstarDLL/include/spdlog/version.h +++ b/include/spdlog/version.h diff --git a/loader_launcher_proxy/dllmain.cpp b/loader_launcher_proxy/dllmain.cpp deleted file mode 100644 index 06abb7b2..00000000 --- a/loader_launcher_proxy/dllmain.cpp +++ /dev/null @@ -1,176 +0,0 @@ -#include "pch.h" -#include <stdio.h> -#include <string> -#include <system_error> -#include <shlwapi.h> -#include <sstream> -#include <fstream> -#include <filesystem> - -HMODULE hLauncherModule; -HMODULE hHookModule; -HMODULE hTier0Module; - -using CreateInterfaceFn = void* (*)(const char* pName, int* pReturnCode); - -// does not seem to ever be used -extern "C" __declspec(dllexport) void* __fastcall CreateInterface(const char* pName, int* pReturnCode) -{ - // AppSystemCreateInterfaceFn(pName, pReturnCode); - printf("external CreateInterface: name: %s\n", pName); - - static CreateInterfaceFn launcher_CreateInterface = (CreateInterfaceFn)GetProcAddress(hLauncherModule, "CreateInterface"); - auto res = launcher_CreateInterface(pName, pReturnCode); - - printf("external CreateInterface: return code: %p\n", res); - return res; -} - -bool GetExePathWide(wchar_t* dest, DWORD destSize) -{ - if (!dest) - return NULL; - if (destSize < MAX_PATH) - return NULL; - - DWORD length = GetModuleFileNameW(NULL, dest, destSize); - return length && PathRemoveFileSpecW(dest); -} - -FARPROC GetLauncherMain() -{ - static FARPROC Launcher_LauncherMain; - if (!Launcher_LauncherMain) - Launcher_LauncherMain = GetProcAddress(hLauncherModule, "LauncherMain"); - return Launcher_LauncherMain; -} - -void LibraryLoadError(DWORD dwMessageId, const wchar_t* libName, const wchar_t* location) -{ - char text[4096]; - std::string message = std::system_category().message(dwMessageId); - sprintf_s(text, "Failed to load the %ls at \"%ls\" (%lu):\n\n%hs", libName, location, dwMessageId, message.c_str()); - if (dwMessageId == 126 && std::filesystem::exists(location)) - { - sprintf_s( - text, - "%s\n\nThe file at the specified location DOES exist, so this error indicates that one of its *dependencies* failed to be " - "found.", - text); - } - MessageBoxA(GetForegroundWindow(), text, "Northstar Launcher Proxy Error", 0); -} - -BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved) -{ - switch (ul_reason_for_call) - { - case DLL_PROCESS_ATTACH: - case DLL_THREAD_ATTACH: - case DLL_THREAD_DETACH: - case DLL_PROCESS_DETACH: - break; - } - return TRUE; -} - -wchar_t exePath[4096]; -wchar_t dllPath[4096]; - -bool ShouldLoadNorthstar() -{ - bool loadNorthstar = !strstr(GetCommandLineA(), "-vanilla"); - - if (!loadNorthstar) - return loadNorthstar; - - auto runNorthstarFile = std::ifstream("run_northstar.txt"); - if (runNorthstarFile) - { - std::stringstream runNorthstarFileBuffer; - runNorthstarFileBuffer << runNorthstarFile.rdbuf(); - runNorthstarFile.close(); - if (runNorthstarFileBuffer.str().starts_with("0")) - loadNorthstar = false; - } - return loadNorthstar; -} - -bool LoadNorthstar() -{ - FARPROC Hook_Init = nullptr; - { - swprintf_s(dllPath, L"%s\\Northstar.dll", exePath); - hHookModule = LoadLibraryExW(dllPath, 0, LOAD_WITH_ALTERED_SEARCH_PATH); - if (hHookModule) - Hook_Init = GetProcAddress(hHookModule, "InitialiseNorthstar"); - if (!hHookModule || Hook_Init == nullptr) - { - LibraryLoadError(GetLastError(), L"Northstar.dll", dllPath); - return false; - } - } - - ((bool (*)())Hook_Init)(); - return true; -} - -extern "C" __declspec(dllexport) int LauncherMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) -{ - { - if (!GetExePathWide(exePath, 4096)) - { - MessageBoxA( - GetForegroundWindow(), - "Failed getting game directory.\nThe game cannot continue and has to exit.", - "Northstar Launcher Proxy Error", - 0); - return 1; - } - - SetCurrentDirectoryW(exePath); - - bool loadNorthstar = ShouldLoadNorthstar(); - - if (loadNorthstar) - { - swprintf_s(dllPath, L"%s\\bin\\x64_retail\\tier0.dll", exePath); - hTier0Module = LoadLibraryExW(dllPath, 0, LOAD_WITH_ALTERED_SEARCH_PATH); - if (!hTier0Module) - { - LibraryLoadError(GetLastError(), L"tier0.dll", dllPath); - return 1; - } - - if (!LoadNorthstar()) - return 1; - } - // else printf("\n\n WILL !!!NOT!!! LOAD NORTHSTAR\n\n"); - - swprintf_s(dllPath, L"%s\\bin\\x64_retail\\launcher.org.dll", exePath); - hLauncherModule = LoadLibraryExW(dllPath, 0, LOAD_WITH_ALTERED_SEARCH_PATH); - if (!hLauncherModule) - { - LibraryLoadError(GetLastError(), L"launcher.org.dll", dllPath); - return 1; - } - } - - auto LauncherMain = GetLauncherMain(); - if (!LauncherMain) - MessageBoxA( - GetForegroundWindow(), - "Failed loading launcher.org.dll.\nThe game cannot continue and has to exit.", - "Northstar Launcher Proxy Error", - 0); - // auto result = ((__int64(__fastcall*)())LauncherMain)(); - // auto result = ((signed __int64(__fastcall*)(__int64))LauncherMain)(0i64); - return ((int(__fastcall*)(HINSTANCE, HINSTANCE, LPSTR, int))LauncherMain)(hInstance, hPrevInstance, lpCmdLine, nCmdShow); -} - -// doubt that will help us here (in launcher.dll) though -extern "C" -{ - __declspec(dllexport) DWORD AmdPowerXpressRequestHighPerformance = 0x00000001; - __declspec(dllexport) DWORD NvOptimusEnablement = 0x00000001; -} diff --git a/loader_launcher_proxy/framework.h b/loader_launcher_proxy/framework.h deleted file mode 100644 index 1800e436..00000000 --- a/loader_launcher_proxy/framework.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers -#define WIN32_EXTRA_LEAN -#define VC_EXTRALEAN -// Windows Header Files -#include <windows.h> diff --git a/loader_launcher_proxy/loader_launcher_proxy.vcxproj b/loader_launcher_proxy/loader_launcher_proxy.vcxproj deleted file mode 100644 index b62ac63f..00000000 --- a/loader_launcher_proxy/loader_launcher_proxy.vcxproj +++ /dev/null @@ -1,107 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <ItemGroup Label="ProjectConfigurations"> - <ProjectConfiguration Include="Debug|x64"> - <Configuration>Debug</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Release|x64"> - <Configuration>Release</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - </ItemGroup> - <PropertyGroup Label="Globals"> - <VCProjectVersion>16.0</VCProjectVersion> - <Keyword>Win32Proj</Keyword> - <ProjectGuid>{f65c322d-66df-4af1-b650-70221de334c0}</ProjectGuid> - <RootNamespace>loaderlauncherproxy</RootNamespace> - <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> - <ConfigurationType>DynamicLibrary</ConfigurationType> - <UseDebugLibraries>true</UseDebugLibraries> - <PlatformToolset>v143</PlatformToolset> - <CharacterSet>Unicode</CharacterSet> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> - <ConfigurationType>DynamicLibrary</ConfigurationType> - <UseDebugLibraries>false</UseDebugLibraries> - <PlatformToolset>v143</PlatformToolset> - <WholeProgramOptimization>true</WholeProgramOptimization> - <CharacterSet>Unicode</CharacterSet> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> - <ImportGroup Label="ExtensionSettings"> - </ImportGroup> - <ImportGroup Label="Shared"> - </ImportGroup> - <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - </ImportGroup> - <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - </ImportGroup> - <PropertyGroup Label="UserMacros" /> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> - <LinkIncremental>true</LinkIncremental> - <TargetName>launcher</TargetName> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> - <LinkIncremental>false</LinkIncremental> - <TargetName>launcher</TargetName> - </PropertyGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> - <ClCompile> - <WarningLevel>Level3</WarningLevel> - <SDLCheck>true</SDLCheck> - <PreprocessorDefinitions>_DEBUG;LOADERLAUNCHERPROXY_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <ConformanceMode>true</ConformanceMode> - <PrecompiledHeader>Use</PrecompiledHeader> - <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile> - <LanguageStandard>stdcpp20</LanguageStandard> - </ClCompile> - <Link> - <SubSystem>Windows</SubSystem> - <GenerateDebugInformation>true</GenerateDebugInformation> - <EnableUAC>false</EnableUAC> - <AdditionalDependencies>shlwapi.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies> - </Link> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> - <ClCompile> - <WarningLevel>Level3</WarningLevel> - <FunctionLevelLinking>true</FunctionLevelLinking> - <IntrinsicFunctions>true</IntrinsicFunctions> - <SDLCheck>true</SDLCheck> - <PreprocessorDefinitions>NDEBUG;LOADERLAUNCHERPROXY_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <ConformanceMode>true</ConformanceMode> - <PrecompiledHeader>Use</PrecompiledHeader> - <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile> - <LanguageStandard>stdcpp20</LanguageStandard> - </ClCompile> - <Link> - <SubSystem>Windows</SubSystem> - <EnableCOMDATFolding>true</EnableCOMDATFolding> - <OptimizeReferences>true</OptimizeReferences> - <GenerateDebugInformation>true</GenerateDebugInformation> - <EnableUAC>false</EnableUAC> - <AdditionalOptions>/HIGHENTROPYVA:NO %(AdditionalOptions)</AdditionalOptions> - <AdditionalDependencies>shlwapi.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies> - </Link> - </ItemDefinitionGroup> - <ItemGroup> - <ClInclude Include="framework.h" /> - <ClInclude Include="pch.h" /> - </ItemGroup> - <ItemGroup> - <ClCompile Include="dllmain.cpp" /> - <ClCompile Include="pch.cpp"> - <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader> - <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader> - </ClCompile> - </ItemGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> - <ImportGroup Label="ExtensionTargets"> - </ImportGroup> -</Project>
\ No newline at end of file diff --git a/loader_launcher_proxy/loader_launcher_proxy.vcxproj.filters b/loader_launcher_proxy/loader_launcher_proxy.vcxproj.filters deleted file mode 100644 index 4bf52578..00000000 --- a/loader_launcher_proxy/loader_launcher_proxy.vcxproj.filters +++ /dev/null @@ -1,33 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <ItemGroup> - <Filter Include="Source Files"> - <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> - <Extensions>cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx</Extensions> - </Filter> - <Filter Include="Header Files"> - <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier> - <Extensions>h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd</Extensions> - </Filter> - <Filter Include="Resource Files"> - <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier> - <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions> - </Filter> - </ItemGroup> - <ItemGroup> - <ClInclude Include="framework.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="pch.h"> - <Filter>Header Files</Filter> - </ClInclude> - </ItemGroup> - <ItemGroup> - <ClCompile Include="dllmain.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="pch.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - </ItemGroup> -</Project> diff --git a/loader_launcher_proxy/pch.cpp b/loader_launcher_proxy/pch.cpp deleted file mode 100644 index 64b7eef6..00000000 --- a/loader_launcher_proxy/pch.cpp +++ /dev/null @@ -1,5 +0,0 @@ -// pch.cpp: source file corresponding to the pre-compiled header - -#include "pch.h" - -// When you are using pre-compiled headers, this source file is necessary for compilation to succeed. diff --git a/loader_launcher_proxy/pch.h b/loader_launcher_proxy/pch.h deleted file mode 100644 index cc757129..00000000 --- a/loader_launcher_proxy/pch.h +++ /dev/null @@ -1,13 +0,0 @@ -// pch.h: This is a precompiled header file. -// Files listed below are compiled only once, improving build performance for future builds. -// This also affects IntelliSense performance, including code completion and many code browsing features. -// However, files listed here are ALL re-compiled if any one of them is updated between builds. -// Do not add files here that you will be updating frequently as this negates the performance advantage. - -#ifndef PCH_H -#define PCH_H - -// add headers that you want to pre-compile here -#include "framework.h" - -#endif // PCH_H |