Commit Graph

258 Commits

Author SHA1 Message Date
Shauren
e0ce4528c5 Core/NetworkIO: Use reactor style sending on linux to reduce locking overhead 2014-09-09 19:19:25 +02:00
Shauren
abfd29ab61 Core/WorldSession: Added research notes about CMSG_AUTH_SESSION values and reordered checks during login to always initialize encryption first to make sure the client can read failure packet 2014-08-21 18:18:13 +02:00
Shauren
c741d2682a Core/NetworkIO: Prevent queueing more async operations when socket is already closed 2014-08-11 20:43:07 +02:00
Shauren
39d3480172 Core/Authserver: Fixed writing to invalid memory address 2014-08-10 11:48:43 +02:00
Shauren
df11916ad5 Core/NetworkIO: Allow receiving packets bigger than buffer size and properly handle situations where not entire packet was read in one go
Core/Authserver: Restored authenticator functionality
2014-08-10 11:00:27 +02:00
jackpoz
78af80230d Core/Misc: Fix static analysis issues 2014-08-08 21:14:12 +02:00
DDuarte
7e64222029 Auth/Main: Fix crashes on shutdown
"mutex destroyed while busy"
2014-08-05 15:23:42 +01:00
DDuarte
66a8d41f59 Auth/Networking: Use non-throw resolves in realmlist updates
Fixes #12737
2014-08-05 15:14:52 +01:00
joschiwald
04bb78f6c3 Scripts/OutdoorPvP: replaced some chat texts with proper defense messages 2014-07-29 23:45:34 +02:00
Shauren
d46c3bf877 Core/Authserver: Fixed invalid memory access when AsByteArray returns less bytes than expected 2014-07-29 18:26:10 +02:00
DDuarte
0e52b111f3 Core/Config: User-friendlyfy configuration parsing errors
It will now print useful error messages that pinpoint the issue
with the config file (missing file, bad syntax, etc)

In memory of MitchesD that lost 18 hours finding a problem with
his config because of a duplicated line.
2014-07-29 01:47:00 +01:00
Shauren
6f272ea5b7 Core/Network: Optimized packet sending by removing unneccessary memory copying 2014-07-27 17:46:46 +02:00
Shauren
e77c0b6ed4 Core/Network: Allow storing any packet types in Socket write queue to reduce the amount of copying going on 2014-07-27 14:59:46 +02:00
Shauren
26715795b4 Fixed gcc build 2014-07-27 01:26:03 +02:00
Shauren
c1b1ba44ba Core/Network: Refactored socket code, moved common operations to base Socket class 2014-07-26 23:26:01 +02:00
Vincent-Michael
e516265703 Core: Fix non pch build 2014-07-25 21:52:41 +02:00
DDuarte
dcfa3bfa90 Core/Network: Fix build 2014-07-25 19:49:43 +01:00
Shauren
db6be5927f Core/Realmlist: Force resolving realm addresses to ipv4
Closes #12640
2014-07-25 20:13:13 +02:00
DDuarte
4f1d247dfb Core/Network: Fix some possible exceptions on socket.close()
Ref #12634
2014-07-25 18:06:43 +01:00
Shauren
42eeec12bf Core/Mains: Handle SIGBREAK to achieve clean shutdown when users click X button on windows 2014-07-23 19:04:07 +02:00
Shauren
0b236d480a Core/Authserver: Fixed changing realms 2014-07-22 20:15:11 +02:00
Vincent-Michael
946ab3e8b7 Core: Kill again whitespace :( 2014-07-21 18:14:22 +02:00
leak
dce92611f3 Refactored singletons to enable proper deconstruction during shutdown 2014-07-20 00:40:08 +02:00
Chaplain
68398a559e [Auth\Worldserver] Use boost to load console arguments. (Added a few style changes and cmake fix)
Conflicts:
	src/server/worldserver/Main.cpp
2014-07-15 18:15:55 +02:00
Subv
e84ba172a7 Fixed a GCC internal error when compiling AsyncAcceptor 2014-07-10 13:36:54 -05:00
Subv
110396447f Fixed the authserver not accepting clients.
Fixed using hostnames in the realmlist table.
2014-07-07 14:25:17 -05:00
Subv
77caf33deb Removed some unneeded boost dependencies.
Ensure that the correct packet sizes are read in the authserver.
Added some try catch to the authserver to deal with boost exceptions (this part is not finished)
2014-07-06 17:04:42 -05:00
leak
59c8ffe4b3 Change the freeze detector thread to be a periodic callback running on the thread pool 2014-07-06 23:04:38 +02:00
leak
021e18d152 Refactored both world and auth main
- Master/Worldrunable removed
- World Update loop now running on main (which was doing nothing before)
- Processpriority moved to shared
- Added a preliminary thread pool for boost::asio::io_service
2014-07-04 15:22:06 +02:00
leak
4f2f9e08f8 Fixed compilation and some copy paste error 2014-07-04 15:20:23 +02:00
Subv
151785b9ce Merge branch 'master' of github.com:TrinityCore/TrinityCore into boost
Conflicts:
	src/server/game/World/World.cpp
2014-07-03 15:57:47 -05:00
Subv
2874014443 Cleaned up the authserver includes a bit.
Fixed authserver pch build
2014-07-02 11:50:03 -05:00
leak
c31c6f3ba3 Backported AsyncAcceptor generalization to authserver 2014-07-02 18:05:30 +02:00
leak
310f5e6846 Some ground work for ASIO based RemoteAccess handling 2014-07-02 17:38:44 +02:00
leak
66c94ce965 Delinking ACE from Shared and authserver 2014-07-02 00:43:47 +02:00
leak
029bad6698 Replaced all remaining ACE based Singletons
Replaced ACE base AutoPtr class with shared_ptr
Note: worldserver currently broken due to MapUpdater threading failure (ACE ofc, what else could it be)
2014-07-01 00:54:09 +02:00
leak
eb36acd152 Replaced ACE_Task_Base based LogWorker with ProducerConsumerQueue 2014-06-30 14:44:52 +02:00
jackpoz
82df3f090b Auth/Misc: Move OpenSSL version log from Warning to Information 2014-06-28 17:55:40 +02:00
leak
a20ac4c25b Compile fix for recently added coding accessing socket information 2014-06-24 17:41:43 +02:00
Subv
0db743c4ff Merge branch 'master' of github.com:TrinityCore/TrinityCore into boost
Conflicts:
	src/server/authserver/Server/AuthSession.cpp
	src/server/game/Server/WorldSession.h
	src/server/shared/Packets/ByteBuffer.cpp
	src/server/shared/Utilities/Util.h
2014-06-23 16:35:54 -05:00
Ascathor
6949735098 Core/Misc:
* Fix some codestyle, fix some typos

* Change CMakeLists for: Custom (can be uncommented), Events, World
** Custom is theoretically unchanged. You can, however, uncomment the glob_recurse that initializes every file within. This might be easier for beginners.

* Introducing the IP Based Action Log System:
** On several different actions, e.g. Login, Character Login, etc., a new entry is added
** Can be logged on and off in worldserver config
*** Disabled by default to prevent increased log db size for unknowing users.

* Add a new row to account table called 'last_attempt_ip'
** Lists the last ip trying to connect to the account

* Add a new type of HookScripts: AccountScript
** Includes: OnAccountLogin, OnFailedAccountLogin, OnEmailChange, OnFailedChange, OnPasswordChange, OnFailedPasswordChange

* Added new Hook to PlayerScripts: OnFailedPlayerDelete

* Added new variables to PlayerScripts: OnPlayerDelete
2014-06-13 16:25:11 +02:00
Vincent-Michael
1d39db16b9 Core/Misc: Kill Whitespace ... 2014-06-07 23:58:08 +02:00
leak
68e22ad311 Replaced ACE based typedefs for fixed width ints with C++11 versions 2014-06-01 20:55:31 +02:00
leak
35aa142f6a Replaced ACE_INET_Addr with boost::asio::ip::address 2014-05-31 18:31:53 +02:00
leak
bf6e58b8d4 Ditched ACE_Singleton in favor of C++11 like Singleton 2014-05-31 15:58:59 +02:00
leak
f05d540658 Restore PCH builds and make GCC happy 2014-05-31 01:02:03 +02:00
leak
b520f7da01 Damn you VS default settings.. 2014-05-30 15:46:17 +02:00
leak
5a363ee0e1 Replace authserver ACE related code with Boost/C++11 2014-05-30 14:54:56 +02:00
Praetonus
f296095191 Fix various warnings. The core, the scripts and the tools now compile without warnings with -Wall -Wextra -pedantic.
-Fix warnings from -Woverflow on implicit constant conversion.
-Fix warnings from -pedantic.
-Fix warnings from -pedantic.
-Fix warnings from -Wformat.

Two minor changes in addition :

-Replace a defined value equal to 2^31 - 1 by std::numeric_limits<int>::max().
-Remove useless null-check on pointer returned by new. New doesn't returns nullptr on failure, it throws std::bad_alloc.
2014-05-15 21:32:47 +02:00
leak
35c2e97207 Replace ACE signal handling with Boost 2014-05-13 22:41:59 +02:00