Shauren
7e1e441dfa
Core/Common: Compile ServiceWin32 as part of common project instead of directly adding its source files to both server executables
...
(cherry picked from commit 052f2d0a81 )
2025-08-30 22:55:25 +02:00
Shauren
59e5ddd967
Core/CrashHandler: Compile WheatyExceptionReport only once and moved its global variable initializer to all projects using it
...
(cherry picked from commit fd0a7ba871 )
2025-08-30 22:55:25 +02:00
Shauren
bad2936918
Core/Misc: Fixed windows _UNICODE incompatibilities
...
(cherry picked from commit fd4ffc81b2 )
2025-08-30 22:55:25 +02:00
Shauren
7b438d389b
Core/Authserver: Add auth session timeout - socket is closed after 10s of inactivity if not authenticated or after 1 minute if authenticated
2025-07-16 12:57:03 +02:00
Shauren
4fb3bbe718
Core/Authserver: Made authserver endian-aware
2025-07-16 12:55:45 +02:00
Shauren
f21a415b26
Core/Authserver: Minor span/string_view modernization
2025-07-16 12:54:49 +02:00
Shauren
13f18733b8
Core/Authserver: Refactor auth cmd handler table to avoid msvc compiler bug that initializes half of it to garbage as of version 19.44.35211
2025-07-15 20:24:37 +02:00
Shauren
359258cb07
Core/Authserver: Optimize auth packet handler lookup
2025-07-12 18:55:51 +02:00
Shauren
bb4424c77c
Core/Authserver: Remove blocking query in HandleLogonProof
2025-07-05 13:36:15 +02:00
CraftedRO
7b0d1f0913
Core/Misc: Minor corrections to urls and grammar in logs and comments ( #30917 )
2025-05-08 18:52:04 +02:00
Shauren
3a2bb2fcfd
Build: Normalize executable locations in build directory for all platforms
...
(cherry picked from commit a7c42f1ed5 )
2025-04-13 18:22:53 +02:00
CraftedRO
1c10fdfa1d
Core/Auth: Do not close Authserver at startup when no valid realms found
2025-03-27 21:44:46 +01:00
Shauren
1942647c0d
Dep: Replace basic_deadline_timer with std::chrono based basic_waitable_timer
...
(cherry picked from commit c81183a660 )
2025-02-18 15:39:41 +01:00
Shauren
0b10514289
Core/Client Builds: Sync build_info structure with master branch
2024-08-30 02:12:49 +02:00
Смердокрыл
2fca554555
Core/Config: Implement reading config overrides from subdirectory ( #29068 )
...
Co-authored-by: Shauren <shauren.trinity@gmail.com >
(cherry picked from commit 74a4dc46b4 )
2024-04-07 12:05:20 +02:00
Shauren
eb50b29ab3
Core/Misc: Added windows version checks during startup to avoid confusion about crashes when running on unsupported OS
...
(cherry picked from commit 333630b7de )
2023-12-02 15:57:09 +01:00
Shauren
7be101ac67
Core/Locales: Set active code page and locale used by c string functions to utf8
...
Closes #29455
(cherry picked from commit b299902881 )
2023-12-02 15:57:09 +01:00
Shauren
45a5b6a9f0
Core/Calendar: Implement different timezone support for ingame calendar
...
Closes #8390
Closes #29427
(cherry picked from commit b888b1b09f )
2023-12-02 15:57:03 +01:00
Shauren
aaa6e73c8c
Core/Logging: Switch from fmt::sprintf to fmt::format (c++20 standard compatible api)
...
(cherry picked from commit d791afae1d )
2023-08-15 20:10:04 +02:00
Shauren
27259f8524
Core/Crypto: Fixed loading legacy openssl provider for RC4 on windows
2022-06-16 12:37:00 +02:00
Shauren
77091ed599
Core/Crypto: Switch away from most deprecated openssl functions and removed upper version limit
...
(cherry picked from commit bc87f7b337 )
2022-06-16 12:37:00 +02:00
Shauren
4ec52fb160
Core/Authserver: Fix uninitialized variable, fixes changing realms after logging in to world
2021-09-20 22:03:21 +02:00
Anton Popovichenko
1ddd9dc19c
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 >
2021-08-19 22:26:16 +02:00
Anton Popovichenko
ccf1932bc5
Core/Authserver: Remove redundant conversion during Reconnect Proof cmd ( #26765 )
2021-08-08 13:19:30 +02:00
Giacomo Pozzoni
68bf7e6d12
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
2021-07-28 11:44:24 +02:00
Giacomo Pozzoni
661f554b9e
Core/Misc: Fix static analysis issues ( #25924 )
...
* Core/Misc: Fix static analysis issues
* Fix infinite loop in ".debug send opcode"
Fix using uninitialized memory in ".debug send opcode"
2021-01-24 16:04:47 +01:00
Treeston
3084170123
Core/Authserver: Get rid of a leftover declaration after 70d6aebafc
2020-09-08 17:17:10 +02:00
Treeston
bcdbdd6f23
Core/Authserver: Removal of sha_pass_hash, compatibility fields, and everything that uses them (PR #25156 )
2020-09-06 16:04:10 +02:00
Shauren
39c5e03b74
Core/CrashHandler: #ifdef cleanup to make VS not choke when parsing, fixed file being all red in editor
2020-08-07 17:19:18 +02:00
Treeston
44a3aad0af
Core/Authserver: Deprecation of sha_pass_hash (PR #25138 )
...
see also #25157
2020-08-06 00:20:23 +02:00
Giacomo Pozzoni
07fd84b679
Core/Misc: Fix static analysis issues ( #25194 )
2020-08-04 11:36:47 +02:00
Treeston
3164b58c7d
Core/Authserver: Re-organize the accounts table (PR #25135 )
...
- no longer use sha_pass_hash for anything else core-side (.account, SOAP, RA)
- salt/verifier/session_key are now binary
- old s/v/sha_pass_hash fields kept around for backwards compatibility
- sha_pass_hash is still updated (for now), s/v are not
- sha_pass_hash is only read if s/v have been manually changed
- SRP6 b now uses the full 32 bytes of randomness (instead of randomly only using 19)
2020-08-02 22:52:21 +02:00
Treeston
7f7fa8b23d
Core/Authserver: Split SRP6 into its own file (PR #25131 )
2020-07-29 00:07:41 +02:00
Treeston
210176fd91
Core/Authserver: Authserver cleanup (PR#25093)
...
- Fix a handful of 1/256 bugs with most significant byte zero in BigNumber
- Get rid of (most of) the C-style arrays in authserver
- CryptoRandom as a unified source for cryptographic randomness
- Bring our other crypto APIs into 2020
- BigNumber usability improvements
- Authserver is now actually readable as a result of all of the above
2020-07-26 01:53:34 +02:00
Treeston
6bdba191b5
Core/Authserver: Some safeguards in case anyone (read: me) tweaks these files in the future.
2020-07-22 14:54:17 +02:00
ipriver
a46d047f94
fixed indentation for cmake files
2020-06-24 14:42:02 +02:00
ForesterDev
8e0365d8a6
DB/Account: update account_access table ( #24788 )
...
* DB/Account: update account_access table:
- rename fields id -> AccountID, gmlevel -> SecurityLevel
- add Comment field
- rename command .acc set gmlevel to .acc set seclevel
* Update auth database
* Fix primary key
* Temporary restore old command account set gmlevel with same handler as account set seclevel
Use Optional for realmID - if not set, use -1 (for all realms)
* Rename 2020_XX_XX_00_auth.sql to 2020_06_20_00_auth.sql
* Update auth_database.sql
* Rename 2020_XX_XX_00_world.sql to 2020_06_20_06_world.sql
Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com >
2020-06-20 21:49:18 +02:00
ipriver
dc467ee0f6
Additional cmake entry for configs
...
Closes #24812
Co-authored-by: Carbenium <carbenium@outlook.com >
2020-06-19 15:06:03 +02:00
Giacomo Pozzoni
141ada19b0
Cherry pick some db commits ( #24713 )
...
* Core/DBLayer: Implement async transaction completion callbacks
(cherry picked from commit 0f0ca3a919 )
# Conflicts:
# src/server/bnetserver/REST/LoginRESTService.cpp
# src/server/bnetserver/Server/Session.cpp
# src/server/bnetserver/Server/Session.h
# src/server/database/Database/Transaction.cpp
# src/server/game/Handlers/CharacterHandler.cpp
# src/server/game/Handlers/SpellHandler.cpp
# src/server/game/Server/WorldSession.cpp
# src/server/game/Server/WorldSocket.cpp
# src/server/game/Server/WorldSocket.h
* Core/Misc: Fixed char enum packet sometimes not showing newly created character when client latency is too low
(cherry picked from commit fc9d2e728e )
# Conflicts:
# src/server/game/Handlers/CharacterHandler.cpp
* Fix no-pch build
* Core/Player: Wait for correct transaction on character creation
(cherry picked from commit 01c68b2aa2 )
# Conflicts:
# src/server/game/Entities/Player/Player.cpp
* Fix warning
* Remove unused login transaction
Co-authored-by: Shauren <shauren.trinity@gmail.com >
2020-05-30 17:43:54 +02:00
myuzhobcplidtkieno
ae553f8966
Added the ability to use TLS when connecting to a database. ( #24348 )
...
* Added the ability to use TLS when connecting to a database.
* Trying to kickstart CI checks
* Revert the kickstart change
Co-authored-by: myuzhobcplidtkieno <myuzhobcplidtkieno@github.com >
Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com >
2020-04-07 22:08:28 +02:00
Lewis Brumby
caf4c4cf2b
Update AuthSession.cpp ( #24397 )
2020-04-06 00:36:56 +02:00
Shauren
fe1003bdbd
Core/DBLayer: Prevent using prepared statements on wrong database
...
(cherry picked from commit e8e89f58fb )
# Conflicts:
# src/server/bnetserver/REST/LoginRESTService.cpp
# src/server/bnetserver/Server/Session.cpp
# src/server/database/Database/DatabaseWorkerPool.cpp
# src/server/database/Database/Implementation/HotfixDatabase.h
# src/server/database/Database/MySQLConnection.cpp
# src/server/database/Database/MySQLConnection.h
# src/server/database/Database/PreparedStatement.cpp
# src/server/database/Database/PreparedStatement.h
# src/server/database/Database/QueryHolder.cpp
# src/server/database/Database/SQLOperation.h
# src/server/database/Database/Transaction.h
# src/server/game/Accounts/BattlenetAccountMgr.cpp
# src/server/game/Achievements/AchievementMgr.cpp
# src/server/game/AuctionHouse/AuctionHouseMgr.cpp
# src/server/game/AuctionHouseBot/AuctionHouseBot.cpp
# src/server/game/AuctionHouseBot/AuctionHouseBotBuyer.cpp
# src/server/game/BattlePets/BattlePetMgr.cpp
# src/server/game/Battlegrounds/ArenaTeam.cpp
# src/server/game/BlackMarket/BlackMarketMgr.cpp
# src/server/game/Chat/Channels/Channel.cpp
# src/server/game/Entities/Corpse/Corpse.cpp
# src/server/game/Entities/Creature/Creature.cpp
# src/server/game/Entities/GameObject/GameObject.cpp
# src/server/game/Entities/Item/Item.cpp
# src/server/game/Entities/Pet/Pet.cpp
# src/server/game/Entities/Player/CollectionMgr.cpp
# src/server/game/Entities/Player/Player.cpp
# src/server/game/Garrison/Garrison.cpp
# src/server/game/Globals/ObjectMgr.cpp
# src/server/game/Groups/Group.cpp
# src/server/game/Guilds/Guild.cpp
# src/server/game/Guilds/GuildFinderMgr.cpp
# src/server/game/Guilds/GuildMgr.cpp
# src/server/game/Handlers/AuctionHouseHandler.cpp
# src/server/game/Handlers/CharacterHandler.cpp
# src/server/game/Handlers/ItemHandler.cpp
# src/server/game/Handlers/MailHandler.cpp
# src/server/game/Handlers/MiscHandler.cpp
# src/server/game/Handlers/PetitionsHandler.cpp
# src/server/game/Handlers/SpellHandler.cpp
# src/server/game/Handlers/TicketHandler.cpp
# src/server/game/Loot/Loot.cpp
# src/server/game/Mails/Mail.cpp
# src/server/game/Maps/Map.cpp
# src/server/game/Movement/Waypoints/WaypointManager.cpp
# src/server/game/OutdoorPvP/OutdoorPvP.cpp
# src/server/game/Pools/PoolMgr.cpp
# src/server/game/Quests/QuestObjectiveCriteriaMgr.cpp
# src/server/game/Reputation/ReputationMgr.cpp
# src/server/game/Scenarios/InstanceScenario.cpp
# src/server/game/Server/WorldSession.cpp
# src/server/game/Server/WorldSocket.cpp
# src/server/game/Spells/SpellHistory.cpp
# src/server/game/Support/SupportMgr.cpp
# src/server/game/Tools/PlayerDump.cpp
# src/server/game/World/World.cpp
# src/server/scripts/Commands/cs_account.cpp
# src/server/scripts/Commands/cs_ban.cpp
# src/server/scripts/Commands/cs_battlenet_account.cpp
# src/server/scripts/Commands/cs_group.cpp
# src/server/scripts/Commands/cs_lfg.cpp
# src/server/scripts/Commands/cs_list.cpp
# src/server/scripts/Commands/cs_message.cpp
# src/server/scripts/Commands/cs_misc.cpp
# src/server/scripts/Commands/cs_npc.cpp
# src/server/scripts/Commands/cs_tele.cpp
# src/server/scripts/Commands/cs_wp.cpp
# src/server/shared/DataStores/DB2DatabaseLoader.cpp
# src/server/shared/Realm/RealmList.cpp
2020-03-31 13:42:01 +00:00
Aokromes
ed93932537
New year
...
Say bye bye to every year changing dates
2020-01-02 06:25:50 +01:00
Shauren
3bf44a5891
warning fix
2019-12-07 14:43:46 +01:00
Shauren
b990a79fd8
Core/Realms: Move build info (and auth seeds) to database
...
(cherry picked from commit 61f2eed353 )
2019-12-07 13:14:16 +01:00
Treeston
4211645834
[3.3.5] Core/Authserver: TOTP rewrite: (PR #23633 )
...
- Proper management commands (.account 2fa)
- Secrets can now be encrypted (set TOTPTokenSecret in .conf)
- Secret now stored in binary
- Argon2 and AES primitives
- Base32/64 support
2019-08-10 21:34:51 +02:00
Shauren
c278044739
Core/Authserver: Fixed crash happening when sending packets larger than 4096 bytes (giant realmlist basically)
...
Closes #23597
2019-07-15 22:28:10 +02:00
Trond B. Krokli
f9b1e4a032
Core/conf: conf.dist typo & grammar corrections ( #23190 )
...
- Typo and spelling corrections
- Grammar corrections, English grammar
- Minor adjustments in example code readability
- Capitalization adjustments to keep consistency
with existing idioms, phrases and concepts
2019-04-21 15:59:48 +02:00
Shauren
d56c671064
Core/Dep: Boost 1.70 compatibility
...
(cherry picked from commit bcda8dd742 )
2019-04-14 01:04:02 +02:00
Shauren
d834ac0255
Warning fix
2019-01-15 22:52:17 +01:00