Commit Graph
756 Commits
Author SHA1 Message Date
Shauren 36e32cc242 Core/NetworkIO: Restored opcode and size checks lost during ace->boost changes, fixes crashes caused by players sending invalid opcodes/too big packets 2014-08-19 19:32:06 +02:00
Shauren bd4edf6e22 Core/Threading: Fixed possible race condition with m_timeOutTime and fixed Thread #1: pthread_cond_{signal,broadcast}: dubious: associated lock is not held by any thread in PCQ 2014-08-12 18:18:52 +02:00
Shauren c741d2682a Core/NetworkIO: Prevent queueing more async operations when socket is already closed 2014-08-11 20:43:07 +02:00
leak 1a27ce1267 Core/NetworkIO: Restore networking related scripting hooks
Closes #12607
2014-08-11 17:40: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
DDuarte a394205eca Core/Server: Add missing overrides 2014-08-09 20:17:40 +01:00
jackpoz 272b9d3d16 Core/WorldSession: Fix socket not being closed on clean logout
Close the WorldSession socket if Player didn't even login or logged out successfully and then closed the client.
2014-08-09 19:37:57 +02:00
jackpoz 15b1d41740 Core/NetworkIO: Adjust more packet throttling values
Adjust more packet throttling values by increasing some limits, this might fix some random kicks.
2014-08-04 18:43:15 +02:00
DDuarte 42decaa360 Core/Server: Add mutex lock to PacketLog 2014-08-02 23:38:25 +01:00
Shauren 58ecb73674 Core/Trade: Replaced SendNotification hacks with proper trade packets 2014-08-01 22:06:33 +02:00
DDuarte 43f868e55c Core/PacketLog: Save session ip and port information in saved packets
This data is put into the "optional data" part of each packet of the PKT 3.1 format
It will be used with WPP to debug some networking issues
2014-07-30 03:45:03 +01:00
joschiwald 04bb78f6c3 Scripts/OutdoorPvP: replaced some chat texts with proper defense messages 2014-07-29 23:45:34 +02:00
Shauren 7a888d03bd Core/Network: Fixed packets being properly received only by the first player when broadcasted to everyone
Closes #12675
2014-07-28 16:37:42 +02: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
DDuarte dcfa3bfa90 Core/Network: Fix build 2014-07-25 19:49:43 +01:00
DDuarte 4f1d247dfb Core/Network: Fix some possible exceptions on socket.close()
Ref #12634
2014-07-25 18:06:43 +01:00
DDuarte 0b75e38755 Core/Shared: Change rand32 to return uin32 instead of int32
Fixes a crash that happened when rand32 returned negative values.
Also updated some related comments that were outdated since we changed to SFMT.

Closes #12638
2014-07-25 15:00:40 +01:00
Shauren f1a41eabae Core/NetworkIO: Fixed boost::asio::async_write usage - packets will now be sent properly 2014-07-24 17:09:45 +02:00
leak 87db1ae44f Replaced try/catch by non-throwing socket.close() 2014-07-20 14:39:35 +02:00
Vincent-Michael 0531f52008 Core: Fix non pch build (gcc) 2014-07-20 02:54:12 +02:00
leak dce92611f3 Refactored singletons to enable proper deconstruction during shutdown 2014-07-20 00:40:08 +02:00
leak b153e1a47f Fix terminate() being called on kicking a player (closing sockets twice is bad)
Also, Boost, why does your is_open() suck..
2014-07-19 21:59:17 +02:00
Shauren 57cf08f86e Core/Logging: Changed format of packet log file from .bin to .pkt and restored packet logging - PacketLogFile extension must now be .pkt to allow WowPacketParser to use it 2014-07-19 13:30:51 +02:00
Subv f6962f9c68 Fixed some compiler warnings 2014-07-13 16:40:31 -05:00
Subv 128217c4c4 Prevent the WorldSocket from being deleted when there's still an async write operation going on. 2014-07-10 16:01:11 -05:00
Subv e84ba172a7 Fixed a GCC internal error when compiling AsyncAcceptor 2014-07-10 13:36:54 -05:00
Subv 6eaffdac51 Nuked some compiler errors on Linux 2014-07-09 11:32:49 -05:00
leak 1a9c183bc6 Fixed the AsyncAcceptor overload (too much c#..) 2014-07-07 22:09:17 +02:00
leak a738cd96dc Renamed WorldTcpSession back to WorldSocket 2014-07-07 22:03:41 +02:00
Subv 32f5286d05 Fixed compile 2014-07-06 13:46:17 -05:00
Subv 80a8ed23b7 Fixed player saving 2014-07-06 13:02:46 -05:00
leak 0dcb0d6490 Restore CMSG_PING handling 2014-07-06 19:46:56 +02:00
Subv ee3bb46feb Fixed login, we're in world guys! 2014-07-06 12:17:27 -05:00
leak 5dc47243fc Fixed packet header decryption and zero size packet handling 2014-07-06 15:17:59 +02:00
Subv 916800eb35 Corrected a mistake in the client packet size 2014-07-06 00:35:51 -05:00
Subv b5d5768d44 Fixed the crashes 2014-07-05 21:38:29 -05:00
Subv 42b2041aeb Fixed PCH build, some leaks and tidied the code up a bit 2014-07-05 19:41:18 -05:00
leak 7befb26625 Some groundwork for replacing the ACE based WorldSocket handling 2014-07-06 01:26:29 +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 87b72f41ca Fixed login and some errors 2014-07-02 21:56:40 -05:00
leak e0aed65c8c ACE cleanup on game, now the major issue remains WorldSocket 2014-07-02 02:20:53 +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
Shauren afd931550b Core/Skills: Check if a skill can be unlearned with SkillRaceClassInfo.dbc data and use max skill level from SkillTiers.dbc 2014-06-25 20:34:10 +02:00
Subv f03d49705d Core/Databases: Removed ACE dependencies on some of the database handling code. 2014-06-24 13:17:41 -05: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
Shauren 06962b16f1 Core/PacketIO: Fixed logic in DosProtection::EvaluateOpcode 2014-06-11 19:28:25 +02:00