Commit Graph

359 Commits

Author SHA1 Message Date
momo5502
2d2c4c2c31 [General] Small fixes 2017-06-21 15:11:33 +02:00
momo5502
08bc848267 [General] Small code fixes and optimization 2017-06-14 20:53:54 +02:00
momo5502
110aeb02f7 [General] Upgrade to C++17 features 2017-06-13 15:35:12 +02:00
momo5502
a327915008 [Command] Don't crash on shell execute 2017-06-11 21:25:00 +02:00
momo5502
7a0261ccbd [AntiCheat] Prevent dll injection
- Hook native LdrLoadDll to prevent injection
- Hook native LdrpLoadDll to prevent injection
- Hook NtCreateThreadEx to log threads created by this process
  and kill remote threads
2017-06-10 20:24:42 +02:00
momo5502
917870a19d [Cache] Re-enable .to domain 2017-06-10 20:23:24 +02:00
momo5502
320d51ae32 [Cache] Add new cache urls 2017-06-04 20:51:05 +02:00
momo5502
4ef714aa4c [ZoneBuilder] Disable resharper warnings 2017-06-04 15:08:50 +02:00
momo5502
c8f80ceee0 [String] Use alternateive VAProvider when uninitializing
Using thread-local VAProviders in the uninitialization routine is not
possible, as thread storage has already been destroyed
2017-06-04 14:20:44 +02:00
momo5502
ff15fb07fc [IO] More efficient file check 2017-06-02 22:18:00 +02:00
momo5502
49c0b7d3a1 [String] Use leak-free local storage implementation of VA 2017-06-02 22:05:45 +02:00
/dev/urandom
a739e3bc8d
[Hooking] Fix variable typos. 2017-06-02 21:35:05 +02:00
momo5502
d8c3e7fcee [String] Make VA leak-safe 2017-06-02 15:36:20 +02:00
momo5502
1b6255f069 [Scheduler] Correctly register the scheduler 2017-06-01 10:54:16 +02:00
momo5502
9f50c260c8 [Threading] Make VA thread safe
This fixes an issue for dedis
2017-05-31 18:03:33 +02:00
momo5502
15aea4e0bc [Node] Get serverlist from dedis 2017-05-30 20:31:00 +02:00
momo5502
02741fff00 [WebIO] Fix moddownload (don't enforce content length) 2017-05-25 12:40:39 +02:00
momo5502
f6894b46c5 [Download] Add ssl support 2017-05-15 21:57:45 +02:00
momo5502
3e20ca366a [ZoneBuilder] Better FastFile obfuscation 2017-04-27 22:03:05 +02:00
momo5502
7c728b4658 [General] Use preincrement 2017-04-24 22:33:13 +02:00
momo5502
dbe0af988f [IGfxWorld] Test pointer duplication 2017-04-18 19:28:00 +02:00
momo5502
85d519b7b0 [Maps] Disable model sorting until it's fixed 2017-04-16 14:29:35 +02:00
momo5502
d11f5dee1f [Memory] Use global memory allocator when possible 2017-04-16 11:47:57 +02:00
momo5502
360729120c [General] Allow building custom maps 2017-04-15 16:48:43 +02:00
momo5502
59d8c85640 [ZoneBuilder] Check if CSV exists 2017-04-04 22:35:30 +02:00
momo5502
0a8f0e5f70 [Maps] Add r_disableModelWorkaround 2017-03-30 17:56:06 +02:00
momo5502
13eb5ba831 [Entities] Fix model selection 2017-03-27 14:15:09 +02:00
TheApadayo
f4a865698d [ZoneBuilder] Add buildtechsets command, doesn't work yet 2017-03-26 20:44:45 -04:00
momo5502
aa20fc009d [AntiCheat] Patch virtual protect 2017-03-26 20:41:37 +02:00
momo5502
6f91b87bdc [Structs] Adjust GfxBrushModels 2017-03-26 18:00:25 +02:00
momo5502
654b2210ce [IMapEnts] Correct map entities 2017-03-25 22:18:31 +01:00
momo5502
19b6203272 [IGfxWorld] Fix runtime data overflow 2017-03-20 21:07:55 +01:00
momo5502
39a5758955 [Memory] Add pointer mapping support 2017-03-17 23:41:31 +01:00
momo5502
3b702b9d9a [IclipMap_t] Use existing clipmap as base 2017-03-16 20:40:32 +01:00
/dev/root
f0f4a5b6cc [Exception] Changed checks to use c++ experimental features 2017-03-15 19:30:15 +01:00
/dev/root
06e3a72f92 [Cache] Add onion.rip fallback 2017-03-10 14:59:33 +01:00
momo5502
1b4393f095 [AntiCheat] More process security and debug priviledge acquisition 2017-03-04 13:52:00 +01:00
momo5502
1d7006c420 [Utils] Inline array merging 2017-02-24 11:43:05 +01:00
momo5502
f5d5e76ac1 [Proxy] Safer disassembly of the steam api 2017-02-21 21:32:47 +01:00
TheApadayo
06472685e2 [Memory] Add non buggy IsBadReadPtr implementation 2017-02-21 14:15:47 -05:00
momo5502
7d0b34da1a [IPCPipe] Use old IPC handler again 2017-02-12 19:38:56 +01:00
momo5502
0a702aba40 [IO] Move FileSize function 2017-02-10 22:32:33 +01:00
momo5502
9d08e84627 [General] Small refactoring 2017-02-10 22:02:13 +01:00
momo5502
ef675d4d87 [MinidumpUpload] Only upload small dumps 2017-02-10 21:51:30 +01:00
momo5502
cf05da99a1 [IO] Safer file reading and writing 2017-02-10 15:18:11 +01:00
momo5502
b3f83fe955 [General] Fix code analysis warning and memory leaks 2017-02-10 14:17:01 +01:00
momo5502
ee06e79a28 [Exception] Destroy windows and suspend threads 2017-02-10 09:50:08 +01:00
TheApadayo
23ff36d590 [Exception] Added better exception handling so that when the users are morons it explains exactly what happened to them.... cause they're morons 2017-02-09 16:17:06 -05:00
momo5502
a32ad0b2dd [Utils] Remove debugbreak 2017-02-08 19:27:24 +01:00
momo5502
7954330418 [Network] Use linebreaks as separators 2017-01-31 22:02:08 +01:00
momo5502
67d963a0c8 [IPC] Better worker cleanup 2017-01-29 11:48:42 +01:00
momo5502
cd15ad88cd [IPC] Use first worker 2017-01-28 19:22:39 +01:00
momo5502
f81f820b47 [IPC] Experimental second handler 2017-01-28 19:21:55 +01:00
momo5502
20139d4a52 [Friends] Query friends from the worker 2017-01-28 19:05:16 +01:00
momo5502
ee185c538f [ConnectProtocol] Upgrade the protocol to the new ipc infrastructure 2017-01-27 23:09:32 +01:00
momo5502
4e84c297e4 [IPC] Use iw4x as worker process instead of creating a separate binary 2017-01-27 22:03:35 +01:00
momo5502
fc0bf1acc1 [IPC] Basic IPC channel class 2017-01-27 17:21:10 +01:00
momo5502
c15aac546d [General] Prepare code for use with multiple projects 2017-01-27 14:43:52 +01:00
momo5502
c8a41139cf [Steam] Add native callback interface 2017-01-25 22:38:38 +01:00
momo5502
2de95b4a3b [General] Fix protobuf and other memory leaks 2017-01-22 21:38:57 +01:00
momo5502
78c29360bf [Download] Safer moddownload 2017-01-22 13:44:14 +01:00
momo5502
0f258046c3 [Utils] Copy signal slots before executing 2017-01-21 01:52:50 +01:00
momo5502
82e9f3864c [General] Refactor all the code
This is the actual refactoring, the last commit was broken
2017-01-20 22:41:03 +01:00
momo5502
079bc920a8 [General] Basic refactoring 2017-01-20 14:37:52 +01:00
momo5502
74b34f2a6d [LineEndings] Fix them all 2017-01-19 22:55:15 +01:00
momo5502
07b0a42f45 [Download] Small fixes 2017-01-19 21:21:59 +01:00
momo5502
06bb09e1f0 [Cryptography] Generate secure challenges 2017-01-19 18:14:30 +01:00
sr0
e1a4e3ec27 Remove .gitattributes file 2017-01-18 23:44:36 +01:00
/dev/root
6c9e28ff42 [LineEndings] Fix crlf lineendings
- added gitattributes file to force crlf for hpp/cpp/lua
2017-01-16 17:42:50 +01:00
momo5502
a24e68a83b [Cache] Add .link domain 2017-01-15 21:07:06 +01:00
momo5502
fbac207190 [FrameTime] Introduce safer frame waiting mechanism 2017-01-14 13:33:58 +01:00
momo5502
e34958d478 [Node] Only allow 1 node with the same public key 2017-01-14 01:21:39 +01:00
momo5502
c9d160c72a [General] Get rid of unnecessary submodules 2017-01-06 15:27:35 +01:00
momo5502
9130a57465 [IGfxWorld] Finish importer 2016-12-29 00:54:50 +01:00
momo5502
c4690bf49f [Memory] Inline array allocation 2016-12-28 17:30:20 +01:00
momo5502
b4fd5a11d1 [Stream] Add pointer interface to the reader 2016-12-25 15:17:31 +01:00
momo5502
61339350c1 [ZoneBuilder] Add IGameWorldSp interface (WIP) 2016-12-24 17:29:19 +01:00
TheApadayo
2903444e89 [ZoneBuilder] Rewrote to write assets in a nested way to more accurately emulate how linker_pc works
-it doesn't compile... yet
2016-12-23 01:42:56 -05:00
momo5502
715fe82483 [Stream] Fix stream writing 2016-12-22 13:28:02 +01:00
momo5502
336a891d26 [Debugging] Slightly optimize zb writing 2016-12-22 12:53:52 +01:00
momo5502
403974b9cc [Debugging] Slightly optimize iw4 reading log 2016-12-22 12:37:09 +01:00
TheApadayo
296af1716a [ZoneBuilder] Added IFxWorld interface, should work fully 2016-12-22 00:42:53 -05:00
momo5502
8f42168ec3 [Stream] Write invalid streams 2016-12-22 03:32:38 +01:00
TheApadayo
f8a50eda81 2016-12-21 20:59:37 -05:00
TheApadayo
4cb109c3ee [Debgging] Add read/write logger
- You can use the two comparison files (iw4_reads.log & zb_writes.log) to compare the two for differences
- Move the hook in QuickPatches around to change the asset that you're logging
2016-12-21 20:58:00 -05:00
momo5502
33754f40aa [Stream] Reimplement the correct stream writing (thx @TheApadayo) 2016-12-22 02:00:09 +01:00
momo5502
d5241d7dfe [Memory] Use mutex for memory allocation 2016-12-13 21:53:51 +01:00
momo5502
0fb882ef3b [Utils] Safer isstring 2016-12-10 13:07:45 +01:00
/dev/root
4254179520 [Cache] Refactored Cache::GetUrl
- renamed GetUrl() to GetStaticUrl()
2016-11-25 14:16:07 +01:00
/dev/root
124e86387b [General] Fixed line endings
- converted all line endings in cpp/hpp files to dos
2016-11-25 13:00:48 +01:00
/dev/root
0221954b41 [Cache] Fix
- removed Mutex in GetUrl() to speed up startup
2016-11-25 12:48:52 +01:00
momo5502
f169fd5274 [Cache] Use curly brackets 2016-11-22 07:59:46 +01:00
/dev/root
ddce60ee00 [Cache] Removed Constructor
- removed Constructor
- changed all functions to static

[ci skip]
2016-11-21 20:49:33 +01:00
/dev/root
d17f287bf2 [Cache] Used Utils::Cache
[ci skip]
2016-11-21 11:29:55 +01:00
/dev/root
98d9ad402f [Cache] Added mutex
[ci skip]
2016-11-21 11:09:42 +01:00
/dev/root
c969f5054d [Cache] Rewrote code
[ci skip]
2016-11-21 10:50:55 +01:00
momo5502
6a51d280ae [Hooking] Correct interceptor stub 2016-11-20 20:41:02 +01:00
momo5502
8085e4bd88 [CodeStyle] Refactor the code to match our basic style guidelines 2016-11-20 14:10:57 +01:00
momo5502
b7b7292bd4 [IO] Use C++17 filesystem features for directory interaction 2016-11-19 20:40:32 +01:00
momo5502
e92a2fe7ff [WebIO] Handle status code 2016-11-15 19:43:10 +01:00
momo5502
9d3af2cd69 [Utils] Rename interval update method 2016-11-13 12:10:51 +01:00
momo5502
72c19cb968 [FileSystem] Threadsafe filesystem interaction
Replace the ReadFile with a threadsafe variant.
Additionally, this includes a check for memory leaks.
!
2016-11-12 13:07:19 +01:00
momo5502
f46f5590ff Fuck those unit-tests on wine. 2016-11-06 14:26:03 +01:00
momo5502
d32d58cc6f AntiCheat refactoring part 7
?
2016-11-05 12:56:12 +01:00
momo5502
93d096ed18 Fix create directory 2016-11-02 20:50:17 +01:00
momo5502
ac258b5ad9 Add support for new maps, add the dump command for @Dasfonia 2016-10-01 15:39:21 +02:00
momo5502
8e1e179d84 More tests 2016-10-01 02:03:12 +02:00
momo5502
39110c9db7 More cleanup 2016-09-19 20:55:31 +02:00
momo5502
83d6ab2d6b Fix custom models and fix some memory leaks nta had 2016-09-19 20:18:36 +02:00
momo5502
d0f2da8f61 Fix error 2016-09-17 00:22:01 +02:00
momo5502
25585fc9a4 Introduce library util 2016-09-17 00:14:59 +02:00
momo5502
52487aa224 Finish surface loading, but not test ready 2016-09-14 23:01:53 +02:00
momo5502
af21b8a6d9 Optimize moddownload 2016-09-08 21:41:01 +02:00
momo5502
8fb6ea0b63 Use lock guards for mutex locking 2016-09-05 21:58:59 +02:00
momo5502
e94d9788d0 Fix code analysis warnings 2016-09-04 13:06:44 +02:00
momo5502
243ddc400d Experimental moddownload 2016-08-31 17:54:23 +02:00
momo5502
8d2d825be6 Fix code analysis warnings 2016-08-31 02:00:01 +02:00
momo5502
b0ffeeb334 Obfuscate default nodes 2016-08-30 17:51:30 +02:00
momo5502
0c978d9980 Clean minidump code 2016-08-30 12:23:53 +02:00
/dev/urandom
3f04d9d2d4
Fix build with DISABLE_BASE128 set. 2016-08-29 10:18:58 +02:00
/dev/urandom
3b9134422d
Fix Base128 utility function. 2016-08-29 10:11:03 +02:00
/dev/urandom
7c8a4c37ec
Fix Base128 encoding. 2016-08-29 07:47:51 +02:00
/dev/urandom
f9e2eeca7b
Base128 encoding of minidumps before uploading. 2016-08-28 22:46:23 +02:00
/dev/urandom
ebba2819d6
Commit local workspace.
- Split minidump (upload) and exception handling code
- Smaller minidumps for faster uploads
- Several new build flags (accessible from premake5 with --params)
- BitMessage abstractions
- Some other things I can't remember.
2016-08-28 19:39:39 +02:00
/dev/root
a82aab26fa updated BITMESSAGE_SIZE_LIMIT
added EncodeBase64/DecodeBase64 to Utils::String
2016-08-27 23:46:24 +02:00
/dev/root
6696a57b18 added converttobase64 function
added UploadMinidump2BM
2016-08-27 18:18:03 +02:00
momo5502
7f951dadbd Update dependencies 2016-08-25 13:25:23 +02:00
momo5502
256b463411 Don't ignore warning 4100 2016-08-18 02:18:45 +02:00
momo5502
c0e3a49234 TDES -> DES3 2016-08-17 03:19:17 +02:00
momo5502
9a3b5d48e4 Optimize array access 2016-08-14 16:05:57 +02:00
momo5502
b0df3e0e21 Anticheat fixes and aimbot detection 2016-08-08 01:57:00 +02:00
momo5502
ccd465da54 Minidump upload 2016-08-05 20:30:44 +02:00
momo5502
3c448f173f Some experiments 2016-07-31 20:46:22 +02:00
momo5502
a343c5ac5b Optimize localized string allocation 2016-07-22 12:52:12 +02:00
momo5502
b2a9e7af81 Remove unnecessary includes and fix steamauth exploit 2016-07-22 12:12:11 +02:00
momo5502
245cd533d1 Steam proxy 2016-07-12 18:33:25 +02:00
momo5502
2ea490382b More fixes and optimizations 2016-07-11 17:37:36 +02:00
momo5502
9562285ed7 Use new format library and sort utils 2016-07-11 17:14:58 +02:00
momo5502
fdda6244d3 Optimize toasts 2016-06-28 19:38:14 +02:00
momo5502
9b2d709211 Optimize antishit 2016-06-28 11:30:49 +02:00
momo5502
123d62e1eb Even more optimizations 2016-06-26 20:46:02 +02:00
momo5502
5c70ca9011 Fixes and stuff 2016-06-19 17:40:30 +02:00
momo5502
4428c063d7 Small optimization 2016-06-14 19:49:27 +02:00
momo5502
80267f8874 Optimize pointer clearing for zonebuilding 2016-06-10 13:52:55 +02:00
momo5502
5a4ddb27d3 XModel import tests 2016-06-09 01:26:33 +02:00
momo5502
276e35e2d2 Some optimization 2016-06-08 17:28:58 +02:00
momo5502
c8962075a4 Add userraw and redirect http requests to the game's filesystem 2016-06-06 13:00:48 +02:00
momo5502
ba93f02379 Anim import 2016-06-05 21:55:38 +02:00
momo5502
367b76b8df Server info via http 2016-06-05 17:34:55 +02:00
momo5502
18f4bb0a44 Fully 2016-05-16 17:17:25 +02:00
momo5502
1842366f56 Nothing special 2016-05-14 02:00:04 +02:00
momo5502
3c703e6db4 POW optimization and general cleanup 2016-04-11 13:32:11 +02:00
momo5502
72efebb021 Fix fs_game crash 2016-04-09 18:00:28 +02:00
momo5502
19b6a12c92 Add a stack-frame hooking class 2016-04-08 16:15:01 +02:00
momo5502
42cfaccbad Some more bugfixes 2016-03-14 21:29:21 +01:00
momo5502
2adee27862 Fix unicode shit 2016-03-10 01:52:40 +01:00
momo5502
aee6d1d356 Fix protected data segment bug 2016-03-09 20:38:13 +01:00
momo5502
52d7504437 Optimize includes 2016-03-04 15:19:10 +01:00
momo5502
5fffac5bab Entirely block dll injections 2016-03-01 13:37:51 +01:00
momo5502
daa87d2a50 Protect .text segment 2016-02-29 15:49:27 +01:00
momo5502
6fdf7f887a Basic anticheat component 2016-02-29 14:47:21 +01:00
momo5502
bcdc555c4a POW (aka. hashcash) stuff. 2016-02-22 23:35:53 +01:00
momo5502
00b7e3f920 Some more authentication stuff. 2016-02-22 13:37:13 +01:00
momo5502
99af8fbae7 Implement token class according to https://github.com/IW4x/iw4x-client-node/wikis/technical-information#incrementing-the-token 2016-02-22 00:01:20 +01:00
momo5502
6fbae4461e Experimental guid authentication 2016-02-21 19:57:56 +01:00
momo5502
0ec1029a89 Optimize RNG and limit packet input 2016-02-19 23:57:06 +01:00
momo5502
d4c7c0fb6f Optimize rng (ddos protection) 2016-02-18 21:33:19 +01:00
momo5502
a5cca963e0 Seamless integration of our proto address type 2016-02-12 16:29:48 +01:00
momo5502
a11f004a7e More proto stuff.
We should add a version identifier before releasing!
2016-02-12 15:06:06 +01:00
momo5502
02b6dd2f19 Optimize far-jump patches 2016-02-12 00:36:52 +01:00
momo5502
e3904db37c Rewrite network interface. 2016-02-10 17:18:45 +01:00
momo5502
75e76226d1 Include protobuf. Not sure if we're supposed to commit protoc :S 2016-02-10 14:54:50 +01:00
momo5502
d87a6ced42 Implement client side node synchronization. 2016-02-10 01:22:00 +01:00
momo5502
40d6c6d715 Rewrote node system to register using ECDSA signatures. 2016-02-09 22:13:49 +01:00
momo5502
87c239a1dc Fix cryptography memory leaks :P 2016-02-08 18:43:31 +01:00
momo5502
4d36a0b9ed ECDSA and PRGN stuff. 2016-02-08 14:27:15 +01:00
momo5502
c1ef716e5c Structureddata stuff. Not the best implementation, but better than our old one :P 2016-02-06 13:37:23 +01:00
momo5502
ad6220fa0b RSA signature stuff. 2016-02-01 10:23:06 +01:00
momo5502
b350c3774b More node stuff. 2016-01-28 21:37:48 +01:00
momo5502
ba3187ce9e More optimization. 2016-01-24 21:08:14 +01:00
momo5502
388d5836cd Optimize loops. 2016-01-24 19:58:13 +01:00
momo5502
d28323f73e Optimizations
- Increase warning level
- Use proper casting
- Fix some more warnings.
2016-01-24 12:19:34 +01:00
momo5502
9449750aab Allow building custom materials and images. 2016-01-22 16:11:47 +01:00
momo5502
ac4548f4c2 Build materials. 2016-01-22 11:59:43 +01:00
momo5502
32088789ef ^MIght have to reopen issue :/ 2016-01-15 23:59:15 +01:00
momo5502
7ca2a13c30 StringTables (aka. ) 2016-01-12 21:17:55 +01:00
momo5502
558112166a ZoneBuilder stuff. 2016-01-12 19:08:26 +01:00
momo5502
10c8dc9ee0 Partially aka. weapon stuff. 2016-01-12 14:27:48 +01:00
momo5502
2101fc28f3 D3D9Ex. 2016-01-12 00:48:27 +01:00
momo5502
99f5d2cd81 Theater done. 2016-01-10 15:48:49 +01:00
momo5502
4a0c4ec609 Fix stack overflow in zlib decompress routine. 2016-01-09 16:02:54 +01:00
momo5502
7974bd5cd0 Move version stuff back to the standard include. 2016-01-09 15:59:18 +01:00
momo5502
8343ce5f13 Playlist stuff. 2016-01-09 15:30:13 +01:00
momo5502
5624390e67 Start implementing download protocol. 2016-01-09 03:21:59 +01:00
sr0
725869c951 added MILESTONE 2016-01-08 13:51:39 +01:00
momo5502
f8a8edde21 Implement steam overlay. 2016-01-07 16:55:10 +01:00
momo5502
b58085810a Some fastfile stuff. 2016-01-06 01:23:43 +01:00
momo5502
d31b21ab9b Implement experimental zone building. 2016-01-05 00:49:34 +01:00
/dev/urandom
f753acbe74
premake5: Use precompiled headers.
This easily doubles the compilation speed!!1
2016-01-04 20:58:00 +01:00
momo5502
1e3a832be7 Fixes and stuff. 2016-01-04 11:32:05 +01:00