Commit Graph

221 Commits

Author SHA1 Message Date
Shauren
af4dcc93ed Core/Networking: Support IPv6 2024-11-12 13:54:43 +01:00
Shauren
b13b5142f1 Core/Utilities: Extend make_unique_ptr_with_deleter functionality to allow it to create deleters with compile time constant functions (reduces its size to just sizeof(void*)) 2024-10-01 21:03:44 +02:00
Shauren
7ac0c685dd Build: Add WITH_WARNINGS_AS_ERRORS cmake option that turns compile warnings into compile errors 2024-09-20 13:19:42 +02:00
Shauren
a21e7c738e Build: Automatically include WindowsSettings.manifest in all executables instead of listing it separately as source file in every target 2024-09-15 12:55:50 +02:00
Shauren
052f2d0a81 Core/Common: Compile ServiceWin32 as part of common project instead of directly adding its source files to both server executables 2024-09-15 12:40:54 +02:00
Shauren
fd0a7ba871 Core/CrashHandler: Compile WheatyExceptionReport only once and moved its global variable initializer to all projects using it 2024-09-15 12:13:54 +02:00
Shauren
8e15952659 Core/Auth: Refactor client auth key storage to support more future client variants and preserve more information about client version 2024-08-29 15:08:47 +02:00
Shauren
bffc7ece61 Core/Misc: Remove duplicate helper functions 2024-08-29 13:30:08 +02:00
Motive
6b2d12206c Core: Allow macOS arm64 client to connect (#30173) 2024-08-28 19:59:19 +02:00
Shauren
c4b710446d Core/Realms: Realmlist refactors
* Removed global realm variable from World and use RealmList everywhere
* Match auth build key with client version
* Restored allowedSecurityLevel checks for realmlist packet building
* Restored updating population field, mysteriously removed 15 years ago in f20b25d1c9
2024-08-18 18:59:58 +02:00
Shauren
7ff646efa9 Core/Proto: Added messages and services missing descriptors in client 2024-07-28 18:12:53 +02:00
Shauren
d4f4cdc238 Core/Proto: Updated protobuf messages and services for 11.0.2 2024-07-27 00:20:04 +02:00
Shauren
a7c42f1ed5 Build: Normalize executable locations in build directory for all platforms 2024-06-15 16:01:22 +02:00
Shauren
fd4ffc81b2 Core/Misc: Fixed windows _UNICODE incompatibilities 2024-06-02 14:21:13 +02:00
Fabian König
19232ed2b6 CI/GitHub: Add Windows x86_64 CI (github actions) support. (#29773)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2024-05-31 22:08:40 +02:00
Ovahlord
728e7c7fcf Core/Cryptography: dropped support for OpenSSL 1.1
OpenSSL 1.1 has been deprecated for quite some time now so it is time to put it to rest. Please upgrade to OpenSSL 3.x
2024-05-12 15:48:39 +02:00
Shauren
83f4763b25 Core/Misc: Minor change to make_unique_ptr_with_deleter to make it accept only pointers 2024-05-07 12:26:21 +02:00
Shauren
7df138ba2b Core/Misc: Replace shared_ptr with unique_ptr with deleter for cleanups in main() functions 2024-04-04 21:31:22 +02:00
Shauren
28596792a8 Fix build with openssl 1.1.1 2024-03-21 21:45:13 +01:00
Shauren
ac5aee6a98 Core: Updated to 10.2.6.53840 2024-03-21 21:07:23 +01:00
Shauren
5cc1b97fc1 Core/Bnet: Added SRP http endpoints 2024-01-18 00:31:57 +01:00
Meji
39621fa41c Core/Worldserver: Split Worldserver services into separate files (#29555) 2024-01-16 20:04:54 +01:00
Shauren
8b54205778 Build fix 2023-12-26 15:11:11 +01:00
Shauren
623202d68e Core/Bnet: Implemented new SRP6 variants, and migrate old sha_pass_hash in battlenet_accounts to separate salt and verifier columns
* passwords can now be case sensitive and up to 128 characters long
2023-12-26 14:55:15 +01:00
Shauren
15fce17c1a Core/Bnet: Add new loggers to config file template, fixed request/response content logging and fixed setting keep_alive on responses 2023-12-18 12:19:10 +01:00
Shauren
acb5fbd48b Core/Bnet: Rewrite LoginRESTService using boost::beast instead of gsoap as http backend and extract generic http code to be reusable elsewhere 2023-12-17 23:21:10 +01:00
Shauren
78bcc3f52a Core/Misc: Minor code modernization - kill std::bind 2023-12-08 20:27:41 +01:00
Shauren
333630b7de Core/Misc: Added windows version checks during startup to avoid confusion about crashes when running on unsupported OS 2023-12-01 19:53:13 +01:00
Shauren
b299902881 Core/Locales: Set active code page and locale used by c string functions to utf8
Closes #29455
2023-11-24 20:01:17 +01:00
Shauren
b888b1b09f Core/Calendar: Implement different timezone support for ingame calendar
Closes #8390
Closes #29427
2023-11-21 12:25:22 +01:00
Shauren
22f19a1645 Core/SSL: Build fix for openssl 1.1.1 2023-09-16 01:24:07 +02:00
Shauren
1fe73cd532 Core/SSL: Support more certificate formats 2023-09-16 00:41:07 +02:00
Shauren
cc6dba1376 Core/Realms: Minor refactor to realm address storage (remove LocalSubnetMask as it is now unused, db field kept for table structure compatibility with 3.3.5 branch) 2023-08-03 11:18:11 +02:00
Shauren
f94e341a03 Core/Bnet: Support password protected private keys 2023-07-26 20:59:15 +02:00
Shauren
8b426af763 Core/Bnet: Send hostnames in portal requests for launcherlogin 2023-07-20 00:38:07 +02:00
Shauren
6be536a73b Core/Network: Refactor local/remote ip address selection code and allow using hostnames in LoginREST bnetserver config options 2023-07-15 00:45:16 +02:00
Shauren
cdfaecda52 Core/Network: Cleanup asio using directives 2023-07-15 00:43:19 +02:00
Смердокрыл
74a4dc46b4 Core/Config: Implement reading config overrides from subdirectory (#29068)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2023-06-09 20:36:03 +02:00
Shauren
3bd4c21754 Core/DataStores: Remove temporary 10.0.7 workraround 2023-05-05 00:45:11 +02:00
Shauren
d791afae1d Core/Logging: Switch from fmt::sprintf to fmt::format (c++20 standard compatible api) 2023-01-08 21:16:53 +01:00
Shauren
8a183a6e5e Core/bnetserver: Implemented reconnecting with launcherlogin 2022-09-13 14:27:54 +02:00
Shauren
89652bd78f Core/bnetserver: Add compatibility for classic clients 2022-09-06 16:29:36 +02:00
Shauren
3fa46c6dc1 Core/Crypto: Fixed loading legacy openssl provider for RC4 on windows 2022-09-05 18:48:43 +02:00
Shauren
bc87f7b337 Core/Crypto: Switch away from most deprecated openssl functions and removed upper version limit 2022-05-03 17:03:57 +02:00
Anton Popovichenko
8447f627ba Core/Config: Implement config override with env vars (#26811)
* Core/Config: Implement config override with env vars

Implement overriding of configuration from the .conf file with environment variables.
Environment variables keys are autogenerated based on the keys defined in .conf file.
Usage example:
$ export TC_DATA_DIR=/usr
$ TC_WORLD_SERVER_PORT=8080 ./worldserver

* Core/Config Fix typo in logs

Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>

* Core/Config Fix code style in EnvVarForIniKey

Co-authored-by: Shauren <shauren.trinity@gmail.com>

* Update tests/common/Config.cpp

* Apply suggestions from code review

Co-authored-by: Peter Keresztes Schmidt <carbenium@outlook.com>

* Apply suggestions from code review

Co-authored-by: Peter Keresztes Schmidt <carbenium@outlook.com>

Co-authored-by: Anton Popovichenko <anton.popovichenko@mendix.com>
Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
Co-authored-by: Shauren <shauren.trinity@gmail.com>
Co-authored-by: Peter Keresztes Schmidt <carbenium@outlook.com>
(cherry picked from commit 1ddd9dc19c)
2022-03-13 16:37:01 +01:00
Shauren
becc9ba1fc Core/Misc: Fix mac build 2022-03-12 18:35:59 +01:00
Giacomo Pozzoni
5afa32e9a7 Core/Network: Add option to allow/disallow saving IP addresses to database (#26723)
Add config option AllowLoggingIPAddressesInDatabase to authserver and worldserver to specify if IP addresses can be logged or not to the database

(cherry picked from commit 68bf7e6d12)
2022-03-11 20:50:36 +01:00
Shauren
439b027d48 Core/Misc: Cleanup unused includes 2022-02-13 15:07:00 +01:00
Treeston
e0e3bae82c Core/Authserver: Removal of sha_pass_hash, compatibility fields, and everything that uses them (PR #25156)
(cherry picked from commit bcdbdd6f23)
2022-02-05 13:29:21 +01:00
Shauren
473f3db0ab Core/CrashHandler: #ifdef cleanup to make VS not choke when parsing, fixed file being all red in editor
(cherry picked from commit 39c5e03b74)
2022-01-26 18:46:43 +01:00