Commit Graph
302 Commits
Author SHA1 Message Date
Peter Keresztes Schmidt ad340466d0 Misc: Use [[fallthrough]] attribute instead of comment to mark intentional fallthroughs (#25054)
Related: #25006
(cherry picked from commit 85b5b842ca6c05d4e51081e6c3282940a80f3761)
2022-01-23 22:02:03 +01:00
Shauren 865b47efad Core/Networking: Switch to intrusive variant of MPSC queue to halve the number of memory allocations for packet sending (#24659)
(cherry picked from commit f0060496f9c8c4a21c28552a95928f2d05e031a9)
2022-01-06 19:38:12 +01:00
Shauren 6391cf8a35 Core/Networking: Format string fix for previous commit 2021-12-30 11:56:35 +01:00
Shauren 74088e15c1 Core/Networking: Catch ByteBuffer exceptions in WorldSocket::InitializeHandler 2021-12-30 11:53:31 +01:00
Chaouki Dhib c19a4db1c1 Core/Movement: Add time synchronisation (#18189)
(cherry picked from commit 975f1e364a6a68be2beca261a64ea8aecc16f6f6)
2021-11-30 22:11:36 +01:00
Shauren cc94c3eb50 Core/Sockets: Initialize _sessionKey variable in constructor 2021-06-13 01:00:22 +02:00
jackpoz e17e4e6f07 Core/Misc: Replace time(NULL) with GameTime::GetGameTime()
(cherry picked from commit 12701cb0c6c45eb105ad449eb9a56e76d84d691e)

 Conflicts:
	src/server/game/Achievements/AchievementMgr.cpp
	src/server/game/AuctionHouse/AuctionHouseMgr.cpp
	src/server/game/AuctionHouseBot/AuctionHouseBotBuyer.cpp
	src/server/game/AuctionHouseBot/AuctionHouseBotSeller.cpp
	src/server/game/Battlefield/Battlefield.cpp
	src/server/game/Battlefield/Zones/BattlefieldWG.cpp
	src/server/game/Battlegrounds/BattlegroundMgr.cpp
	src/server/game/Calendar/CalendarMgr.h
	src/server/game/DungeonFinding/LFGQueue.cpp
	src/server/game/Entities/Corpse/Corpse.cpp
	src/server/game/Entities/Creature/Creature.cpp
	src/server/game/Entities/Item/Item.cpp
	src/server/game/Entities/Pet/Pet.cpp
	src/server/game/Entities/Player/Player.cpp
	src/server/game/Entities/Unit/Unit.cpp
	src/server/game/Globals/ObjectMgr.cpp
	src/server/game/Grids/ObjectGridLoader.cpp
	src/server/game/Guilds/Guild.cpp
	src/server/game/Handlers/AuctionHouseHandler.cpp
	src/server/game/Handlers/BattlefieldHandler.cpp
	src/server/game/Handlers/CalendarHandler.cpp
	src/server/game/Handlers/CharacterHandler.cpp
	src/server/game/Handlers/ChatHandler.cpp
	src/server/game/Handlers/LFGHandler.cpp
	src/server/game/Handlers/MailHandler.cpp
	src/server/game/Handlers/MiscHandler.cpp
	src/server/game/Handlers/MovementHandler.cpp
	src/server/game/Handlers/PetHandler.cpp
	src/server/game/Handlers/QueryHandler.cpp
	src/server/game/Handlers/TicketHandler.cpp
	src/server/game/Instances/InstanceSaveMgr.cpp
	src/server/game/Server/WorldSession.cpp
	src/server/game/Server/WorldSocket.cpp
	src/server/game/Spells/Auras/SpellAuras.cpp
	src/server/game/Tickets/TicketMgr.cpp
	src/server/game/Tickets/TicketMgr.h
	src/server/game/World/World.cpp
	src/server/scripts/Commands/cs_gobject.cpp
	src/server/scripts/Commands/cs_instance.cpp
	src/server/scripts/Commands/cs_list.cpp
	src/server/scripts/Northrend/zone_wintergrasp.cpp
	src/server/scripts/Spells/spell_item.cpp
2021-04-15 05:53:27 +02:00
Shauren 55eef73c48 Core/PacketIO: Increase max allowed incoming packet size for CMSG_HOTFIX_REQUEST 2021-03-02 01:06:28 +01:00
Shauren f922c6e7a4 Core/PacketIO: Renamed a bunch of opcodes based on more research (only those added after 6.0) 2020-09-19 12:44:42 +02:00
Shauren 1c52d5fff7 Core/Misc: Replace NULL with nullptr 2020-08-14 17:06:03 +02:00
Treeston 73922d2a85 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)

(cherry picked from commit 3164b58c7d170810b69378950c0891e5f5b8678b)
2020-08-03 22:37:47 +02:00
Treeston e9392ad287 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

(cherry picked from commit 210176fd915cf4ba16f428d3c1a249a71f4aa7a7)
2020-08-03 19:39:00 +02:00
Treeston 2c3fc47a96 Proper client timeout detection (#19906)
- Properly detect client timeout when logged into a character after a configurable time (default 60s) has passed without the client sending any packets.
- Fixes issues with crashed clients leaving characters in the world for a very long time (default 15 minutes), as well as edge case exploits involving intentionally pausing client execution for some amount of time.

(cherry picked from commit 7dfd472f8dff6ce067572e2887c2beb56d9ba9de)
2020-07-16 22:00:30 +02:00
ForesterDev 01d098830a 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 <[email protected]>
(cherry picked from commit 8e0365d8a6ca5628ad17e6684743d9ab2138c068)
2020-06-22 11:03:31 +02:00
Shauren 0f0ca3a919 Core/DBLayer: Implement async transaction completion callbacks 2020-04-14 16:23:44 +02:00
Aokromes b0bf1275ee New Year 2020-01-02 06:44:10 +01:00
Shauren 61f2eed353 Core/Realms: Move build info (and auth seeds) to database 2019-12-07 13:02:10 +01:00
Shauren 65b91375e0 Core: Updated allowed build to 8.2.5.32722 2019-12-04 00:06:22 +01:00
Shauren 387705a8fc Core: Updated allowed build to 8.2.5.32638 2019-11-23 12:28:18 +01:00
Shauren dd39f2c1a7 Core: Updated allowed build to 8.2.5.32580 2019-11-20 12:35:11 +01:00
Shauren 6aee80e61a Core: Updated allowed build to 8.2.5.32494 2019-11-13 12:02:51 +01:00
Shauren ee2e49429f Core/PacketIO: Update opcodes and packet structures to 8.2.5 2019-10-27 00:12:41 +02:00
Shauren 3b110b30d9 Core: Updated allowed build to 8.2.0.31478 2019-08-18 10:50:57 +02:00
Shauren f884e5a856 Core: Updated allowed build to 8.2.0.31429 2019-08-11 12:19:56 +02:00
Shauren e8e89f58fb Core/DBLayer: Prevent using prepared statements on wrong database 2019-07-27 01:00:37 +02:00
Shauren 71cbb0ae1c Core: Updated allowed build to 8.2.0.31229 2019-07-26 18:25:25 +02:00
Shauren 7dc057fedb Warning fix 2019-07-15 18:25:57 +02:00
Shauren 87bcf6c3c1 Warning fix 2019-07-15 18:03:48 +02:00
Shauren 74a801182a Core/PacketIO: Updated packet encryption to 8.2 2019-07-14 19:20:45 +02:00
Shauren 455959c606 Core/PacketIO: Rewrite updatefield handling 2019-06-08 17:06:57 +02:00
Shauren 50cfeb9aa4 Core/Misc: Improved ip2location code and set it to disabled by default
(cherry picked from commit 0ead73516adfeaff96292685592085e20737d535)
2019-01-09 17:35:18 +01:00
Gooyeth 163c487be7 Common: Replace ip2nation by ip2location. (#21957)
Replace ip2nation by ip2location.

Download: https://lite.ip2location.com/database/ip-country
(cherry picked from commit 2fe4ab94c52ad2fa90189ecd9c053da49f06561e)
2019-01-09 17:35:13 +01:00
vincent-michael 5620eb9463 Update copyright note for 2019
auto happy = new year(2019);
2019-01-01 10:14:33 +01:00
Shauren 0a779bd791 Core/PacketIO: Updated packet structures to 8.0.1 2018-11-05 00:00:34 +01:00
Shauren c2d61e05cf Core: Updated allowed build to 7.3.5.26972 2018-06-29 22:38:38 +02:00
Shauren 6ef9c4dbfc Core: Updated allowed build to 7.3.5.26899 2018-06-22 18:00:24 +02:00
Shauren 170d10b8a9 Core: Updated allowed build to 7.3.5.26822 2018-06-14 23:08:55 +02:00
Shauren f313e9f5e1 Core: Updated allowed build to 7.3.5.26654 2018-05-24 22:34:18 +02:00
Roc13x 11c3c456b7 Core/Bnet: Improve client ban messages (#21837)
* Don't hide banned game accounts from list.
* Display proper ban messages with suspension time remaining.
* More appropriate error codes for bans and locks
2018-04-18 20:27:45 +03:00
Shauren 72a9a8a29c Core: Updated allowed build to 7.3.5.26365 2018-04-06 18:03:08 +02:00
Shauren 31f6ba5a92 Core: Updated allowed build to 7.3.5.26124 2018-02-28 23:18:41 +01:00
Shauren 4af15915bc Core/PacketIO: Updated opcodes and packet structures to 7.3.5 2018-02-18 16:33:49 +01:00
Shauren dfd2660a85 Core/Misc: Added compatibility layer for boost 1.66 and future std:: networking stuff
* Based on work done by @dimiandre in PR #21173

Closes #21171
Closes #21173
2018-01-06 01:21:59 +01:00
vincent-michael 7d00ae4045 Update copyright note for 2018
auto happy = new year(2018);
2018-01-01 00:40:17 +01:00
Shauren 20a3c9eed2 Core/PacketIO: Update opcodes to 7.3.2 2017-12-30 00:23:43 +01:00
Shauren ca9b0b029f Core/Misc: Fixed uninitialized values
CID 1254611 1377296 1377728 1377727
2017-07-17 19:10:32 +02:00
Shauren c5d3dd90be Core/Game: Include cleanup
* Mostly aimed at removing Log/DatabaseEnv includes from other headers
* Fix most packet headers including other packet headers - moved common structures such as ItemInstance to their own files
* Moved SAI function definitions to source files (massive or requiring many different dependencies)
2017-05-18 23:53:25 +02:00
Shauren 6c92a481a3 Core/Misc: Cleanup worldserver/bnetserver main() functions to run destructors in predictable order
* world/bnet servers will now fail to startup if listen ports are in use
* Restored "Network.OutUBuff" config option lost during boost transition
2017-05-04 20:41:22 +02:00
Shauren 8e2634b2b4 Core/DBLayer: Convert async queries to new query callbacks and remove old callback handling 2017-01-13 21:38:03 +01:00
vincent-michael 86b98686a9 Update copyright note for 2017
Happy new year
2017-01-01 16:23:13 +01:00