Commit Graph

117 Commits

Author SHA1 Message Date
Nay 0b9a5cb37a Buildsystem/Windows: Fix compile in debug mode 2011-08-06 17:21:09 +01:00
click 5b0b53a8c0 Buildsystem/Windows: Fix a typo in the worldserver/authserver .rc files - fixes debug builds on Windows 2011-08-05 23:35:09 +02:00
click d7715fa4b8 Buildsystem/Windows: Add support for reading commithash and commitdate directly from the executable binaries.
To view this information, check the "Product Version" field in Properties on the respective daemon.

+ Fix worldserver/authserver .rc file layouts and content (now adheres to MS standards *sighs*)
+ Change .serv info output to show corename followed by the commit date and hash
+ Include showing the versionstring on worldserver startup completion (on Aokromes' request)

Thanks to Paradox for bugging me enough about it and the initial pull-request.
2011-08-04 22:53:33 +02:00
Spp- e47b96af3e Core: Append single character to stream as character, not as a string 2011-07-29 14:18:28 +02:00
Derex d65e1d9a3f Core/Network: Handle running out of file descriptors on linux-based systems (windows-based systems requires additional fixes)
Signed-off-by: click <click@gonnamakeyou.com>
2011-06-23 11:14:01 +02:00
leak 1003f30448 Add spaces after commas 2011-04-29 20:47:02 +02:00
click 9762c17833 Core/Buildsystem: Update copyright-headers for 2011, and adjust with the correct teamname as well. 2011-04-27 18:17:00 +02:00
runningnak3d c41839a243 Core/Authserver: vi change word (cw) FAIL! 2011-04-12 14:33:42 -04:00
runningnak3d cf5e97003e Core/AuthServer: Some minor text cleanup. 2011-04-12 14:30:18 -04:00
Shauren 2f79b0f266 Core: Removed all double (and more) empty lines 2011-03-21 10:52:14 +01:00
Machiavelli 250bc09ded Core/Log: Also add DebugLogMask config to authserver. Only logical value as of right now is 64 2011-02-20 20:26:55 +01:00
Machiavelli e07e20ffca Core/Log: Implement log masks for debug log level, to allow selective debug output. Update your worldserver.conf. 2011-02-20 20:16:34 +01:00
leak 137b079eea Core: Generic cleanup (tab2spaces/trailing whitespace removal) 2011-01-26 01:03:35 +01:00
Machiavelli bd85914d92 Core/DBLayer: Properly manage mysql library initialization and shutdown in authserver and worldserver. Prevent multiple calls and make it more elegant. 2011-01-13 21:30:37 +01:00
Derex 45459bed23 Core/Netcode: Fix file descriptor leak under linux platforms with ACE dev poll reactor.
close #15

Signed-off-by: Machiavelli <machiavelli.trinity@gmail.com>
2011-01-09 13:53:25 +01:00
Machiavelli 957c69de83 Update copyright note for 2011.
Happy new year.
2011-01-01 15:01:13 +01:00
silinoron da8d794f4b Core/Authserver: Put code in line with recent singleton changes.
--HG--
branch : trunk
2010-12-27 09:27:43 -08:00
silinoron 8b99f28e29 Core/Authserver: Revert a small mistake. Thanks aurimas.
--HG--
branch : trunk
2010-12-27 09:19:44 -08:00
silinoron 60c6d462e4 Core/Authserver: Significant cleanup in preparation for a rewrite.
Dropped support for running as a service on windows; it may be back in some form later.
Otherwise there should be no functional changes.

--HG--
branch : trunk
2010-12-27 09:02:02 -08:00
click 392c08ecdd Buildsystem: Revert revision 4fb5181d88 (removes -lcrypto from worldserver/authserver linking, this SHOULD be handled -properly- by the OpenSSL-package already.
--HG--
branch : trunk
2010-12-27 09:53:22 +01:00
click a99e12cf0f Buildsystem/Unix: Fix an idiotic split-package behaviour on RedHat-based systems (and possibly some others)
Closes issue 4380

--HG--
branch : trunk
2010-12-24 18:04:09 +01:00
Shauren 928443d899 Core: Removed more operator workarounds for ACE_Singleton (missed previously because of inconsistent naming)
--HG--
branch : trunk
2010-12-23 23:25:44 +01:00
click 5180ed0383 Core/AuthServer: Fix the previous commit (it might help to actually fetch what we want to work on as well)
--HG--
branch : trunk
2010-12-21 05:57:53 +01:00
click 2f80f1b2f8 Core/AuthServer: Allow reauthentication to the authserver on realm logout. Thanks to .. someone (webmaster?)
Fixes issue 4191.

--HG--
branch : trunk
2010-12-21 05:50:19 +01:00
leak 4c9cfa6739 Core/Buildsystem: Resolved quoting problem that caused gcc to spam warnings. Patch by click.
--HG--
branch : trunk
2010-12-20 02:23:55 +01:00
Machiavelli f1a73e89b8 Merge
--HG--
branch : trunk
2010-12-13 16:13:32 +01:00
Machiavelli ea29d87dcc Backed out changeset: 8326a2411148
--HG--
branch : trunk
2010-12-13 09:18:49 +01:00
leak e226c4ac34 - Added Perl based conf merger script
- Removed LogSQL config option until reimplementation on code side
- A bit of cosmetics for .conf files

--HG--
branch : trunk
2010-12-06 00:24:45 +01:00
Machiavelli b845b9d0fd Core/DBLayer:
- Make time format of MaxPingTime consistent between authserver and worldserver. Note that the value is in minutes, update your config files accordingly if needed.
- Remove obsolete atomic uint32 and prevent concurrent calls to vector::size() in DatabaseWorkerPool

--HG--
branch : trunk
2010-12-05 16:48:47 +01:00
Machiavelli f5d6319d4d Core/DBLayer:
- Make the mysql connectionpool shared for async and syncrhonous connections.
- Allow configurable amount of connections for the pool
- Allow configurable amount of delaythreads
Note that delaythreads now only represent in-core threads. Whenever they execute a task they will pick a free connection from the pool instead of using their previously unique assigned connection.
The purpose of this design change is better distribution of SQL requests (no bottlenecks paired with idling) among available resources.
This also prevents a ¨memory waste¨ of preparing async prepared statements on synchronous connections (that were never called) - and vice versa. Now, connections aren´t explicitly async or synchronous, they serve both purposes.

Use at own risk, might cause instabilities.
Don´t forget to update your config files and clear your cmake cache.

--HG--
branch : trunk
2010-12-04 21:50:36 +01:00
silinoron b8bf37264b Core/Authserver: Cleanup.
--HG--
branch : trunk
2010-12-04 11:19:41 -08:00
click 03925d7324 * Remove CRLF from configfiles
--HG--
branch : trunk
2010-11-24 14:03:45 +01:00
click 5753be3271 Core/Configs: Use "oldstyle" configfile method - includes configfile cleanups and also restructuring it so every option is explained properly
Fix by leak. Closes issue 4913.

--HG--
branch : trunk
2010-11-24 13:48:00 +01:00
click b6e50110ac Core/Authserver: Clean up authserver base code a bit + follow codingstyle
--HG--
branch : trunk
2010-11-16 14:29:01 +01:00
click 2873844809 Core/Authserver: Remove CRLF warnings for authserver.rc
--HG--
branch : trunk
2010-10-07 20:09:22 +02:00
click 613b81f36f REALLY fix the CRLF-crap...
--HG--
branch : trunk
2010-10-07 15:54:07 +02:00
click f0c4241ea4 Remove the accidental additions of CRLF-crap from the header updates
--HG--
branch : trunk
2010-10-07 15:35:36 +02:00
click dd29d9e422 More copyright header updates (will this ever end?)
--HG--
branch : trunk
2010-10-07 14:50:05 +02:00
click a67d7c9afd Copyright header updates - part 3... (and some whitespace cleanups)
--HG--
branch : trunk
2010-10-07 14:00:52 +02:00
click 8ea4b32fab Update copyright headers (following the same standard in all files = good)
--HG--
branch : trunk
2010-10-07 12:41:56 +02:00
Shauren 6c35c376e9 Buildsystem: Generating revision.h is now a part of build process (revision.h is back as target)
Buildsystem: Removed non-existing include directories

--HG--
branch : trunk
2010-10-03 16:30:22 +02:00
click b87d8f4700 Buildsystem: Overhaul of the CMake buildsystem:
- utilize CMake for completely generating revision.h (kills off genrev and revision.h targets):
  - pull and set correct revision-ID/hash from Mercurial (hg) when using regular repository sourcetree
  - pull and set correct revision-ID/hash from archived releases (when pulled from googlecode)
  - set and use _BUILD_DIRECTIVE definition (earlier part of revision.h) as compiletime definition
- delete genrev and related buildsystems
  (now deprecated)
- Move some files around to adhere to buildsystem structure
Thanks to Shauren for figuring out the definition-behaviour for MSVC while he was in the shower

--HG--
branch : trunk
rename : cmake_uninstall.cmake.in => cmake/platform/unix/cmake_uninstall.in.cmake
2010-09-29 23:42:09 +02:00
Machiavelli a9e9a2c884 Core/DBLayer:
- DB Threading model update
* Get rid of ThreadBundleMask and bundled connection
* Implement configurable amount of Synch threads for databasepools
* Use modulus based algorithm to check for free synchronous connections instead of previous ¨get connection by thread key or bundlemask¨ feature
* Locks on mysql context objects are now managed outside the mysql query methods

Fixes issue #4058
Fixes issue #4059
Introduces a ton of more issues. Use at own risk. You were warned. Really.

Don´t forget to update your worldserver.conf

--HG--
branch : trunk
2010-09-27 00:20:56 +02:00
click 461590832a Core: Generic cleanup (tab2spaces/whitespace removal)
--HG--
branch : trunk
2010-09-25 22:03:57 +02:00
click f077277aa1 Buildsystem: Set revision.h as a required dependency build before building game, shared, worldserver and authserver
--HG--
branch : trunk
2010-09-25 21:42:11 +02:00
Machiavelli 62946f9ef6 Core/DBLayer:
- Rewrite KeepAlive method for DatabaseWorkerPool. Use mysql_ping instead of explicit select queries, and also schedule KeepAlives for asynchronous threads.
NOTE: While the function is implemented and previous keepalive calls were transformed, it´s possible the keepalive call will need to be placed in several other locations in the code. Please leave feedback on whether or not this fixes your timeout issues.

Update issue #4062

--HG--
branch : trunk
2010-09-25 01:05:24 +02:00
Machiavelli 3c6dc32030 Core/DBLayer:
- Rewrite Field class to be able to store both binary prepared statement data and data from adhoc query resultsets
- Buffer the data of prepared statements using ResultSet and Field classes and let go of mysql c api structures after PreparedResultSet constructor. Fixes a race condition and thus a possible crash/data corruption (issue pointed out to Derex, basic suggestion by raczman)
- Conform PreparedResultSet and ResultSet to the same design standards, and using Field class as data buffer class for both
* NOTE: This means the fetching methods are uniform again, using ¨Field* fields = result->Fetch();¨ and access to elements trough fields[x].
* NOTE: for access to the correct row in prepared statements, ¨Field* fields = result->Fetch();¨ must ALWAYS be called inside the do { }while(result->NextRow()) loop.
* NOTE: This means that Field::GetString() returns std::string object and Field::GetCString() returns const char* pointer.

Still experimental and all that jazz, not recommended for production servers until feedback is given.

--HG--
branch : trunk
2010-09-24 22:16:21 +02:00
Shauren 137cfa4f77 Authserver: Fixed crash when accounts limited to ip tried to login and fixes compile on gcc 4.5, thx Kondziu for pointing it out
Closes issue #3976.
Closes issue #4011.

--HG--
branch : trunk
2010-09-17 13:52:46 +02:00
Rat 7bac6c16be Auth/Login: fixes the "cant relog after login failed" bug and fixes a potential security risk
--HG--
branch : trunk
2010-09-16 21:00:36 +02:00
Machiavelli e873289828 Core/Authsocket: Fix errorenous authentication failure
--HG--
branch : trunk
2010-09-12 17:04:19 +02:00