Commit Graph
288 Commits
Author SHA1 Message Date
lotodore 9450e8a459 Log session id. 2009-07-22 22:00:07 +00:00
lotodore a37f56f09b More paranoia stuff. 2009-07-22 20:48:21 +00:00
lotodore 1783218e6a Adding error handling and additional checks. 2009-07-22 20:22:14 +00:00
lotodore d4ae6d0e8b Fixing compiler errors (some ASN.1 code was commited by accident). 2009-07-22 18:02:15 +00:00
lotodore cac09280a0 Adding an additional exception handler to the receive callback. 2009-07-21 21:40:24 +00:00
lotodore 58d471e0de Fixing possible server issues. 2009-07-13 22:49:32 +00:00
lotodore f7a8cb1419 Adding additional logging. 2009-07-12 21:12:55 +00:00
lotodore a284f27750 Fixing state transition when joining a game. Since this is synchronous now, order is important. 2009-06-20 12:14:06 +00:00
lotodore 993c2529c3 IP address bans are now time limited and will be removed automatically (minimum duration: 1 hour). 2009-06-18 21:32:01 +00:00
lotodore 9ed8368700 Moving server ban code to a separate class, in order to prepare time-limited bans. 2009-06-18 20:16:22 +00:00
lotodore eefbd9e79f Some minor polishing. 2009-06-17 21:22:01 +00:00
lotodore 4b5d78af81 The client network code was rewritten to use boost::asio. Some optimization is still required, and some code files can now be removed. 2009-06-14 22:07:41 +00:00
lotodore 6269b94db1 Properly restarting lobby timers. 2009-06-12 16:04:58 +00:00
lotodore 3b25e18fde Rewriting boost asio timer stuff. (Did I mention I dislike the asio "cancel" semantics?!). TimerManager is no longer used. Should be stable now, but might leak some memory (needs further testing). 2009-06-12 15:48:34 +00:00
lotodore c8594e8e7b Canceling asio timers has bad semantics, and causes loads of trouble. Therefore, cancelled timers are simply marked as such, and the asio callback is silently ignored. This fixes several crashes, if players were removed from a game due to an error, because some timers were not cancelled. *sigh* This one took a lot of nerve. 2009-06-07 23:25:13 +00:00
lotodore 5f3369432a Rewriting sender yet again to fit the new asio design. Polling for new send data is no longer needed, this also reduces lag. 2009-06-07 08:51:43 +00:00
lotodore 55bd832955 Fixed network game termination. 2009-06-04 22:13:52 +00:00
lotodore 8005cc82c6 Fixed server termination crash. However, network games are still not properly terminated. 2009-06-04 20:37:18 +00:00
lotodore 47648392fb Use boost::asio timer callbacks instead of self-made ones. There are still some termination issues (terminating a network game will result in a crash). However, it should be quite effective now with a large number of users. 2009-06-01 19:49:16 +00:00
lotodore cee2d787d0 Adding some error handling. Some is still missing. 2009-06-01 10:23:44 +00:00
lotodore 24abedbbab Renaming class ServerGameThread to ServerGame. 2009-05-31 20:14:46 +00:00
lotodore f2bd0c6111 ServerGameThread is no longer a thread. 2009-05-31 19:45:20 +00:00
lotodore b48209a5e4 Termination of games is now working. Error handling is still missing in some cases, and it is very slow if there are a lot of players, but other than that all is fine :-). 2009-05-31 19:11:59 +00:00
lotodore 2952f0b85d Fixing some compiler warnings and single-threaded game issues. Note: The server currently crashes when trying to start a game. 2009-05-31 11:00:33 +00:00
lotodore 08ed5e0496 Almost complete rewrite of server game state due to porting the network engine to asio. Server is still broken in a lot of ways. A game is no longer run in a separate thread (but this change is still incomplete). 2009-05-30 22:20:40 +00:00
lotodore 8ab2fed1a2 More restructuring. Still broken. 2009-05-10 22:21:20 +00:00
lotodore 2541f28ff2 Sender thread is no longer a thread (part of boost::asio integration). Warning: Network games are still broken! 2009-05-10 17:53:37 +00:00
lotodore d258bc25d0 Server accept thread is no longer a thread. 2009-05-10 14:57:51 +00:00
lotodore d7ca4d67b5 Fixing compiler errors. Still broken in terms of network functionality. 2009-05-06 21:09:58 +00:00
lotodore 60b5d45c53 Adopting changes from asio branch. Currently broken. 2009-05-04 21:11:29 +00:00
lotodore bdb6e9f22f Enable logging of avatar uploads 2009-04-25 18:33:01 +00:00
lotodore 992dd4b618 Adding backward compatibility for 0.6 clients. They cannot join games with > 7 players. 2009-04-11 12:32:54 +00:00
lotodore bd2aece3da Small improvements concerning ban texts. 2009-04-11 11:14:12 +00:00
lotodore 33001626c1 Adding IP address bans. 2009-04-11 11:03:22 +00:00
lotodore f8b1123cc5 Adding server irc management request to show the ip address of a user (in order to ban the user from the server). 2009-04-10 21:54:59 +00:00
lotodore 69f3b49ab2 Adding support for listing and removing single bans. 2009-04-10 21:04:08 +00:00
lotodore aef82cef0e Preventing exception in boost::regex. 2009-04-09 22:56:22 +00:00
lotodore 5fbc56cfc2 Fixed another merge error. 2009-04-08 17:05:58 +00:00
lotodore a3a7a7879e Fixing branch problem. 2009-04-07 22:23:29 +00:00
lotodore e59e50c10b Changes to allow regex bans. Might need updating of pro-files due to boost::regex dependency. 2009-04-07 22:04:38 +00:00
lotodore 13f70f85a7 Adding debug log entry. 2009-03-23 22:30:50 +00:00
lotodore f2ec0b1ef4 Detect avatar file type for download. Not fully working yet. 2009-03-22 00:39:25 +00:00
lotodore 16decacb6b New configuration options for automatically uploading the avatars to an external server. 2009-03-01 23:09:14 +00:00
lotodore e5ecc5d133 Trying to fix server termination issue. 2009-02-27 22:09:03 +00:00
lotodore 8f59de0c62 Proper destruction of sockets (crashed previously). 2009-02-01 17:21:02 +00:00
lotodore c998edf219 Fixed cleanup issue - the previous version had kind of a resource leak. 2009-01-31 22:20:08 +00:00
lotodore e0ff6db98e Create I/O service object in sender thread. 2009-01-26 20:57:39 +00:00
lotodore f2c3b2b723 Fixed boost asio stuff. Now working but probably some polishing required. 2009-01-25 21:56:43 +00:00
lotodore 3c820445c6 Fixed missing completion call issue. However, boost::asio now automatically closes the socket. This cannot be disabled. So the next step is to use the boost::asio socket class for the session and everywhere else. 2009-01-25 21:12:33 +00:00
lotodore 17377f5a6b New boost::asio based sender thread. Does not work on windows yet, because the completion routine is never called. No idea why not. 2009-01-25 20:19:09 +00:00