Commit Graph

70 Commits

Author SHA1 Message Date
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
Treeston
7603dacc64 Core/Authserver: Deprecation of sha_pass_hash (PR #25138)
see also #25157

(cherry picked from commit 44a3aad0af)
2022-01-26 16:21:43 +01:00
Shauren
193233286d Core/Misc: ASSERT() cleanup - followup of cherry pick 572eab1c35 2021-08-08 15:22:55 +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 3164b58c7d)
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 210176fd91)
2020-08-03 19:39:00 +02:00
Shauren
79cd94d26d Core/Misc: Changed GetLocaleByName to return invalid value on invalid input instead of LOCALE_enUS
* Also added IsValidLocale helper function
2020-06-30 00:22:25 +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 <giacomopoz@gmail.com>
(cherry picked from commit 8e0365d8a6)
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
e8e89f58fb Core/DBLayer: Prevent using prepared statements on wrong database 2019-07-27 01:00:37 +02:00
Shauren
3058d8c5ab Core/bnetserver: Fixed crash happening when sending packets larger than 4096 bytes 2019-07-21 16:32:49 +02:00
Shauren
50cfeb9aa4 Core/Misc: Improved ip2location code and set it to disabled by default
(cherry picked from commit 0ead73516a)
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 2fe4ab94c5)
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
f94deace76 Merge branch 'bfa' 2018-12-09 14:45:03 +01:00
Shauren
31f0186d20 Core/Bnet: Updated protobuf messages and services 2018-11-05 17:41:37 +01:00
Shauren
41a7e08e43 Core/Bnet: Safeguard auth process against bad external db modifications 2018-10-22 19:06:26 +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
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
4d5eacd3af Core/Bnet: Added support for -launcherlogin logins (external client launcher required) 2017-10-03 18:03:57 +02:00
Shauren
65af89e4e6 Warning fixes 2017-09-22 19:39:04 +02:00
Shauren
91626f0339 Core/Bnet: Moved loading account info from rest service to session
* This improves concurrency by removes thread synchronization when checking login tickets
* Also allows users to use external (web based) login systems
2017-09-22 18:26:00 +02:00
Shauren
beb3316089 Core/Shared: Include cleanup 2017-05-13 11:49:09 +02:00
Shauren
7e538980a2 Core/Database: Include cleanup 2017-05-12 18:50:27 +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
Shauren
def94248e1 Core/Bnet: Fixed an issue that allowed client to enter Battlenet::Session::ReadDataHandler with an invalid header
Closes #18312
2016-11-26 11:55:28 +01:00
Shauren
8396dabdad Core/Misc: Fixed coverity issues
Uninitialized fields: CID 1354593, 1354595, 1354738
Unchecked return value: CID 1354558
Out of bounds access: CID 1352989, 1352993
Null pointer dereference: CID 1296286
2016-06-06 09:16:59 +02:00
Naios
be90932eda Core/Common: Move the query callback header to the database project
* Also renames the header to it's correct name QueryCallback

(cherry picked from commit d4d199d765)
2016-05-10 18:20:52 +02:00
Shauren
500d5db81e Renamed PublicKeyFile -> CertificatesFile 2016-04-10 14:05:30 +02:00
Gacko
7c3df3f5d3 Make private key and public key configurable.
Defaults to the files installed to the bin directory.
2016-04-10 13:31:39 +02:00
Shauren
ea652fbedd Build fixes 2016-03-28 18:47:13 +02:00
Shauren
dde620c402 Core: Updated to 6.2.4
* Rewrite bnetserver for new authentication protocol
2016-03-28 17:12:57 +02:00
DDuarte
b372935ce3 Typo fix 423bded9a6 2016-03-28 03:17:51 +01:00
DDuarte
423bded9a6 Core/Network: Change SocketMgr.StartNetwork to take the thread count by arg instead of config
AuthSocketMgr doesn't need "Network.Threads" config

Fixes "Missing name Network.Threads in config file authserver.conf"

Ref #16859

(cherry picked from commit 980f28d2ce)

# Conflicts:
#	src/server/authserver/Server/AuthSocketMgr.h
#	src/server/game/Server/WorldSocketMgr.cpp
2016-03-28 02:36:58 +01:00
Shauren
97a79af470 Core/Networking: Rewrite networking threading model
Each network thread has its own io_service - this means that all operations on a given socket except queueing packets run from a single thread, removing the need for locking
Sending packets now writes to a lockfree intermediate queue directly, encryption is applied in network thread if it was required at the time of sending the packet
2016-02-19 19:23:04 +01:00
Shauren
36a1b1ccd5 Core/Bnet: Moved expiring bans to background task running every minute by default (configurable) - no longer executed during login. 2016-02-16 00:14:59 +01:00
Vincent-Michael
478cc756eb Update copyright note for 2016
Happy new year (Again new year with idiots ...)
2016-01-01 00:34:25 +01:00
Shauren
783e8299cc Core/Misc: Fix for builds linked with libc++ instead of libstdc++ 2015-10-24 15:39:32 +02:00
Naios
a2908719c0 Core/Bnetserver: Fix warnings caused through non virtual destructors. 2015-10-06 16:11:54 +02:00
Shauren
63def8aa32 Core/Battle.net:
* Changed packet structures to mirror client names
* Simplified ToString Building
* Removed deprecated structures

World: Cleaned up duplicate realm info 'realm' and 'realmHandle' variables (realmHandle was removed, that data is fully contained in realm)
2015-10-06 00:30:47 +02:00
Shauren
705e5ea5d9 Core/Battle.net
* Updated game account flags
* Fixed infinite loop in ReadFourCC if value in packet was 0
* Corrected ClosingReason enum in ConnectionClosing
2015-10-04 00:26:38 +02:00
Shauren
1658421403 Core/Battle.net: Only send one IP address for a realm - fixes waiting time to join realm if the wrong address gets picked by the client first (local address for external client)
Closes #14891
2015-07-09 10:26:30 +02:00
Shauren
0e49eefe85 Core/DBLayer: Sprinkle some async magic on worldserver auth/session load process
* Implemented base for loading account wide data
2015-06-20 00:59:31 +02:00
Shauren
ee6e060be8 Core/Battle.net: Fixed accessing freed memory 2015-04-18 17:01:02 +02:00
Shauren
a024b80a7f NOPCH Build fix 2015-04-13 18:34:25 +02:00
Shauren
ea7cf85588 Build fix 2015-04-13 18:28:05 +02:00
Shauren
ff101cd100 Core/Battle.net: Query optimizations part2 - made all queries asynchronous 2015-04-11 18:58:13 +02:00