Commit Graph
100 Commits
Author SHA1 Message Date
lotodore 44c71fe67a Adding missing admin flag for ASN.1 2009-07-31 21:09:18 +00:00
lotodore 3e8512a2ea Adding logging. 2009-07-30 22:11:12 +00:00
lotodore c769884c56 Removing duplicate condition. 2009-07-30 21:50:50 +00:00
lotodore b81d357f1a Handle interrupted/retry error code in read handler. 2009-07-30 21:47:30 +00:00
lotodore e44286044d Adding separate project for asn1c generated files. 2009-07-26 22:58:06 +00:00
lotodore 50af3598a3 Adding missing vote-kick messages to ASN.1 protocol definition. 2009-07-26 08:53:30 +00:00
lotodore 336dc836a0 Adding missing vote-kick messages to ASN.1 protocol definition. 2009-07-26 08:52:58 +00:00
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 d4131051dc Commenting out SCTP acceptor - currently unsupported. 2009-07-22 20:26:29 +00:00
lotodore 1783218e6a Adding error handling and additional checks. 2009-07-22 20:22:14 +00:00
lotodore e308108803 Adding paranoia check. 2009-07-22 20:19:56 +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 7513742d29 Adding missing asn.1 stuff. 2009-07-19 22:40:12 +00:00
lotodore 976b864367 Adding missing asn.1 stuff. 2009-07-19 22:08:30 +00:00
lotodore 59b0ca6831 Solving more name collision problems. 2009-07-18 21:54:02 +00:00
lotodore deed6320c6 Resolving name collisions. 2009-07-18 21:36:28 +00:00
lotodore 33a3f2f6d4 Committing files instead of symlinks. 2009-07-18 12:36:20 +00:00
lotodore eb1b1e4b9c Adding code which was generated by asn1c from pokerth.asn1 using the call asn1c -fnative-types. Note the license file (COPYING_asn1c). 2009-07-18 12:13:05 +00:00
lotodore 2451fef351 Updating asn1 spec to reduce memory usage. 2009-07-18 12:05:55 +00:00
lotodore 58d471e0de Fixing possible server issues. 2009-07-13 22:49:32 +00:00
lotodore 398805a136 Handle the case if there is no winner in a game. 2009-07-13 18:10:11 +00:00
lotodore 0d9a246fc1 More work on ASN.1 protocol spec. 2009-07-12 23:07:20 +00:00
lotodore f7a8cb1419 Adding additional logging. 2009-07-12 21:12:55 +00:00
lotodore 6c464107cc Workaround for Qt redraw bug on Mac OS. 2009-07-12 12:04:32 +00:00
lotodore efe20f6275 Fixing game termination if an error occurs. 2009-07-12 09:13:49 +00:00
lotodore 9c1792a0f3 More work on ASN.1 protocol spec. 2009-07-11 22:04:46 +00:00
lotodore c22eb1a535 Changes to ASN.1 notation. Compiles with asn1c, and the generated code has been tested on Mac OS and Windows. 2009-07-09 21:27:08 +00:00
lotodore 03a2bc41fe Adding new experimental ASN.1 protocol specification for PokerTH. 2009-06-28 21:59:45 +00:00
lotodore 3ae3f9a883 Preparing 0.7.1 release. 2009-06-25 20:32:58 +00:00
lotodore a2e692d844 Fixing delayed sending of create/join game for network games. 2009-06-20 18:41:03 +00:00
lotodore b868990462 Default network game id is 1, not 0. 2009-06-20 17:39:13 +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 470bbb5eed Trying to fix strange sender crash. 2009-06-20 11:15:06 +00:00
lotodore 34b251bfad Fixing all in timer issue. 2009-06-20 07:59:33 +00:00
lotodore 75703de6b4 Force specific server hack. Only used for beta release. 2009-06-19 22:19:42 +00:00
lotodore 552f49438a Updating changelog. 2009-06-19 22:15:17 +00:00
lotodore 468e52d002 Increasing game version. 2009-06-19 22:08:24 +00:00
lotodore 4c8248353a Adding error handling so that an error within a game does not terminate the server, only the single game. 2009-06-19 20:48:57 +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 6ba148c43c Fixing compiler warnings. 2009-06-16 22:47:53 +00:00
lotodore ccd7080cec Fixing another linux compiler error. 2009-06-16 22:41:50 +00:00
lotodore 35d0988f78 Removing a buffered delay when the client sends data (no longer necessary with asio). 2009-06-16 22:36:07 +00:00
lotodore 87363094d2 Fixing linux compiler error. 2009-06-16 22:35:05 +00:00
lotodore f508bbdd14 Removing more unused code. 2009-06-16 22:13:12 +00:00
lotodore 31dadd6fa2 Removing old native socket stuff which is now unused (replaced by asio calls). 2009-06-16 22:00:07 +00:00
lotodore d45e41c963 Removing unused parts from the receive helper. 2009-06-16 19:05:42 +00:00
lotodore 22edd63dde Further paranoia changes to prevent timer callbacks from occurring in an uncontrolled state. 2009-06-15 22:34:07 +00:00
lotodore 3d57f65e2b Fixed a bug in the packet handling of the client. This fixes the problem that games are not properly started, and that the player list is not properly updated. 2009-06-15 21:42:57 +00:00
lotodore 1acbeba426 Close the socket before client termination, don't let asio close it later because the callbacks might no longer be valid. 2009-06-15 06:42:52 +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 744e5c81d4 Small fixes. Removing some TODO comments which are no longer valid. 2009-06-13 10:52:12 +00:00
lotodore bf0fc6e9ca Removing unused files. 2009-06-12 16:42:38 +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 a33d9b7c3b Trying to fix strange timer crashes. 2009-06-09 23:04:04 +00:00
lotodore 71e9c35ff2 Adding missing file. 2009-06-08 21:56:27 +00:00
lotodore 938d13e31a Send all available data in one chunk within the send handler. This improves speed. 2009-06-08 21:54:24 +00:00
lotodore e53c60c263 Creating a new asio timer instead of reusing the old one. Reusing leads to strange crashes. Whoever invented the semantics of the asio timer obviously did not consider the need to restart a timer within the handler. Oh well. The asio timer service also seems to sleep all the time (not using up 100% load if timeout of all timeouts are 0). Pending further tests, asio timers might be unsuitable. 2009-06-08 21:53:14 +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 fab224c8ad Fixing some timer problems. Starting an internet game now works again. There are still some issues: Games are never terminated, and error handling is not implemented (errors will terminate the server). 2009-05-31 13:47:10 +00:00
lotodore 59358bff0e Fixed server crash when trying to start a game. Server is still broken, though... 2009-05-31 13:17:02 +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 41ab1ff83d Clarifying the usage of banip. 2009-05-12 20:25:31 +00:00
lotodore 47a9fc9588 Typo fixes. 2009-05-12 20:23:47 +00:00
lotodore d68827c606 Updating server irc commands. 2009-05-12 20:19:39 +00:00
lotodore 22720a83f2 Small project file fixes. 2009-05-10 22:34:07 +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 ac4c2e9aef Integrating precompiled headers support (might speed up compilation). Currently disabled (in .pro files). 2009-05-07 22:36:51 +00:00
lotodore e813c49fe5 Changing windows build to boost 1.39 with mingw gcc 4.4. Windows build system needs update. 2009-05-06 21:24:14 +00:00
lotodore d7ca4d67b5 Fixing compiler errors. Still broken in terms of network functionality. 2009-05-06 21:09:58 +00:00
lotodore 411ede3500 Updated windows build script, now using:
- tdm mingw gcc 4.4
- Qt 4.5.1
- boost 1.39
+ other minor updates.
Update of build tool still pending. The script will be changed to retrieve a stable revision instead of HEAD.
2009-05-04 23:14:07 +00:00
lotodore 60b5d45c53 Adopting changes from asio branch. Currently broken. 2009-05-04 21:11:29 +00:00
lotodore 0431b4cb33 Setting beta revision to 0. 2009-05-03 11:39:32 +00:00
lotodore 5385ba8903 Incrementing beta revision counter to cause a notification that a new beta release is available. 2009-04-25 19:30:31 +00:00
lotodore bdb6e9f22f Enable logging of avatar uploads 2009-04-25 18:33:01 +00:00
lotodore 06556fb9c1 Preparing 0.7beta1. 2009-04-15 17:29:11 +00:00
lotodore 739deb8f9d Updating build docs: boost_regex is now required. 2009-04-11 15:41:32 +00:00
lotodore a4a8154073 Fixing compiler warning. 2009-04-11 13:12:39 +00:00
lotodore 3db5c9218b Current compatibility notification is not working. The server will now send a "game full" notification if a 0.6 player tries to enter a game with > 7 max players. 2009-04-11 12:56:30 +00:00
lotodore 23ffcc8e9c Fixing backward compatibility. 2009-04-11 12:45:56 +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 7272e77d97 Fixing MacOS build. 2009-04-11 11:37:45 +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 66da20d2db Found the bug which caused failure of getpeername code. 2009-04-11 09:49:05 +00:00