Commit Graph

233 Commits (2f30fdc370b826dc07d3bee8f7bb793da3e4eb57)

Author SHA1 Message Date
rubidium 71abb66b46 (svn r21363) -Add: support for limiting the amount of (accepted) incoming data 14 years ago
rubidium 4c76d8eaf6 (svn r21361) -Change: make sure the client is listening, or rather receiving, our frames 14 years ago
rubidium c7066d00af (svn r21358) -Codechange: make some network function names conform to coding style 14 years ago
rubidium b2c1f12b44 (svn r21350) -Fix: some indentation 14 years ago
rubidium 2a465f152b (svn r21334) -Fix [FS#4271]: make (more) sure that the savegame and transferred file are the same file and not different ones 14 years ago
rubidium d7eafddc18 (svn r21254) -Change: show a different "lag" message when a client is lagging because of connection trouble or lagging because the client is just slow 14 years ago
rubidium df8b493d6e (svn r21182) -Fix: possible just-freed memory reads 14 years ago
rubidium 75aa37cf9a (svn r21032) -Codechange: perform some more strict tests on the server side when receiving some packets and don't send some when the clients aren't ready for them 14 years ago
rubidium 242110b8cb (svn r21030) -Codechange: move ClientStatus into the network server socket class 14 years ago
rubidium 9012b54fa2 (svn r21029) -Codechange: split the map downloading packet + 3-state enum into 3 separate packets 14 years ago
rubidium 2d32dc29a9 (svn r21024) -Fix: erroneous tab 14 years ago
rubidium abb9835f0a (svn r21001) -Fix [FS#4170] (r20936): clients were not always notified of a player leaving the game 14 years ago
rubidium 6012a9074c (svn r20993) -Codechange: some shuffling of game protocol packet description so they're documented in the "same" place as UDP, content and admin packets (dihedral) 14 years ago
rubidium 28832b68f5 (svn r20973) -Add: chat sending and receiving support for remote admins (dihedral) 14 years ago
rubidium 56a65270fc (svn r20970) -Add: company change notification to remote admins (dihedral) 14 years ago
rubidium 9f17b8ddee (svn r20969) -Add: client info change notification to remote admins (dihedral) 14 years ago
rubidium 72c85d1cdb (svn r20967) -Add: infrastructure to send information to remote admins at specific intervals (dihedral) 14 years ago
rubidium b6799a23c4 (svn r20938) -Codechange: make the code for listening on a socket (more) reusable 14 years ago
rubidium a0f7099a7d (svn r20937) -Codechange: move some variables from client/server to server only 14 years ago
rubidium 332a1bfdea (svn r20936) -Codechange: make server side packet sending methods class methods 14 years ago
rubidium 66087c5e60 (svn r20935) -Codechange: only let the server side use a pool of connected sockets 14 years ago
rubidium 04ce759165 (svn r20934) -Codechange: move NetworkGetClientName to the server's socket 14 years ago
rubidium 6ff39fc5ec (svn r20929) -Codechange: make NetworkCloseClient a class method 14 years ago
rubidium 41e6567c0d (svn r20924) -Codechange: make the game connection packet handling look more like UDP/content packet handling 14 years ago
rubidium 594faf45d9 (svn r20923) -Codechange: prepare creating sub-classes of NetworkClientSocket for server and client side 14 years ago
alberth 2b4da1d345 (svn r20689) -Codechange: Make some global functions used in 1 .cpp file static in that file. 14 years ago
rubidium 6d3c747d05 (svn r20553) -Feature: allow rate limiting of incoming commands 14 years ago
rubidium 8f82b2b588 (svn r20549) -Codechange: centralise the handling of the incoming commands (from clients and the server) 14 years ago
rubidium 3ed6ca0aed (svn r20548) -Codechange: rename some variables giving them slightly more meaningful names 14 years ago
rubidium 8a9929d702 (svn r20542) -Codechange: generalise the setting of "p2" to the ClientID. 14 years ago
rubidium 6f81fa7215 (svn r20510) -Codechange: unify packet queue handling and make insertion O(1) instead of O(n) 14 years ago
alberth 2182b44bb6 (svn r20291) -Codechange: Unify break coding style. 14 years ago
frosch c18839704b (svn r20286) -Codechange: Unify end of doxygen comments. 14 years ago
frosch 5b86c79fce (svn r20283) -Codechange: Unify start of doygen comments. 14 years ago
terkhen c92b2e9d3c (svn r20239) -Doc: Give a common name to all fall throughs (FALL THROUGH). 14 years ago
alberth 137e2b64c9 (svn r20211) -Codechange: Indented code should have curly braces around it. 14 years ago
rubidium 8b8102d30f (svn r19996) -Codechange: Add NetworkVehicleType enum. 14 years ago
smatz 09cb5fff3a (svn r19818) -Fix [FS#3784](r16004): kicking clients by IP didn't work 15 years ago
rubidium eb8ee7ad5e (svn r19809) -Codechange: make some unnamed network related enums/defines static const variables 15 years ago
rubidium 5732bdcdb9 (svn r19808) -Codechange: NetworkCalculateLag returned an uint, so keep it that way 15 years ago
rubidium 0cfec82674 (svn r19695) -Fix: leaking a file descriptor 15 years ago
smatz 52b5be7434 (svn r19693) -Codechange: split STATUS_INACTIVE to two states 15 years ago
rubidium a83194fad3 (svn r19678) -Fix (r19607): client status was shown incorrect in the console 15 years ago
smatz abaf6b5b42 (svn r19651) -Fix [FS#3745]: when a company is sold, move connected clients to spectators 15 years ago
rubidium 34cdcaf8b2 (svn r19620) -Fix: desync when a command is received and in the queue while a client starts joining, i.e. save the game state. This can happen in two ways: with frame_freq > 1 a command received in a previous frame might not be executed yet or when a command is received in the same frame as the join but before the savegame is made. In both cases the joining client would not get all commands to get in-sync with the server (and the other clients). 15 years ago
smatz 073af4eba2 (svn r19613) -Fix [FS#3755]: possible invalid read when server moves client to spectators before he finishes joining 15 years ago
smatz e0746e5bd3 (svn r19610) -Codechange: rename STATUS_AUTH to STATUS_AUTHORIZED 15 years ago
smatz 535a3bf847 (svn r19608) -Fix: do not kick client if he entered password and the password was cleared meanwhile 15 years ago
smatz 150ae1c707 (svn r19607) -Codechange: use different packet types instead of packet subtypes 15 years ago
rubidium ff5dfd9c7e (svn r19589) -Change: add some more useful information to the desync log and unify the formatting 15 years ago
yexo b21278659c (svn r19255) -Codechange: encapsulate GRFIdentifier in GRFConfig instead of subclassing it 15 years ago
rubidium 78f5533141 (svn r19072) -Fix [FS#3599]: possible read/write after free when the client triggered the server to close the connection 15 years ago
rubidium 149af66877 (svn r18875) -Codechange: remove some unneeded bits from the network protocol and improve the naming of some variables 15 years ago
rubidium 9467b7c6d6 (svn r18809) -Codechange/Cleanup: remove unneeded headers from some files, if a header require a header make it include that header 15 years ago
rubidium 2cbb3dd7d1 (svn r18804) -Codechange: guard against binaries claiming to be compatible with a future (stable) release of OpenTTD. 15 years ago
rubidium 89443276b1 (svn r18782) -Codechange: move the content of callback_table.cpp to network_command.cpp; it's only ever used there. 15 years ago
frosch 992bc6c345 (svn r18381) -Codechange: Add RoadVehicle::IsBus() to simplify some stuff. 15 years ago
rubidium da30e736ca (svn r18330) -Cleanup: remove some unneeded includes 15 years ago
rubidium fbcd97528a (svn r18054) -Change/Fix [FS#3310]: make pause on join pause during the whole joining (including download) phase 15 years ago
rubidium a0840ee58b (svn r18052) -Codechange/Fix: make the 'pause' chat message when actually executing the pause command. This to prevent showing paused and especially unpaused to be shown when the state doesn't change. Output now mentions whether pause changes keep the game paused and what reasons for pausing there 'currently' are. 15 years ago
frosch 4691a2069a (svn r17977) -Fix: Busses and trucks are distinguished by cargo class. 15 years ago
smatz c2c23ec661 (svn r17746) -Codechange: 'operator new' doesn't return NULL, NetworkSend_Init() is useless 15 years ago
rubidium 7312bdb362 (svn r17743) -Fix: (post 0.7) memory leak in server in case handling a packet caused the connection to be closed. Also force-close the connection on invalid packets. 15 years ago
rubidium 65f97fb38c (svn r17742) -Codechange: remove unused variable from Recv_Packet 15 years ago
rubidium 982b8ee5fc (svn r17693) -Cleanup: remove some unneeded includes 15 years ago
rubidium d1032d69c8 (svn r17617) -Codechange: make the server side packet handling be more like the client side's handling, i.e. return the connection status
-Fix: do not do invalid reads when a packet handling function closed a connection
15 years ago
frosch 0e36260337 (svn r17532) -Codechange: Rename several Invalidate functions to SetDirty for more consistency and distinguishability. 15 years ago
rubidium 0153e7a211 (svn r17467) -Change: show the client id in join messages at the server (patch by dihedral) 15 years ago
rubidium 99d46e0ad7 (svn r17248) -Fix: add GPL license notice where appropriate 15 years ago
rubidium d61be2637e (svn r17075) -Codechange: rename ~750 strings to be more uniform with their relatives 15 years ago
smatz 54cbd17bd8 (svn r16634) -Codechange: use Company::IsHumanID() instead of IsHumanCompany() 15 years ago
rubidium 71c7064ad6 (svn r16601) -Fix [FS#2880]: try 2... hopefully better this time 16 years ago
rubidium 8f74c85d74 (svn r16592) -Fix [FS#2880]: 'connection lost' was also shown when the client was 'leaving'. 16 years ago
smatz a2567c84a0 (svn r16559) -Codechange: introduce Company::IsValidAiID() and Company::IsValidHumanID(), don't use IsHumanCompany() where possible 16 years ago
alberth 580e478e4e (svn r16491) -Codechange: Added parentheses around bitwise operators for code style. 16 years ago
rubidium 78c726d2b1 (svn r16437) -Codechange: remove the hack that for CMD_COMPANY_CTRL the company was changed from spectator to company 0 in the network code. 16 years ago
rubidium 2832d69272 (svn r16422) -Codechange: use const_cast for removing const and warn when const is (accidentally?) removed using C-style casts. 16 years ago
smatz d6e203ebe2 (svn r16379) -Codechange: remove GetNumTowns(), GetNumIndustries() and GetActiveCompanyCount(), use PoolItem::GetNumItems() instead 16 years ago
smatz 0c10daa243 (svn r16327) -Codechange: replace IsValidPoolItemID(index) by PoolItem::IsValidID(index) 16 years ago
smatz d495dc5dbc (svn r16325) -Codechange: replace GetPoolItem(index) by PoolItem::Get(index) 16 years ago
rubidium 241af768f0 (svn r16242) -Codechange: rework pausing
-Fix [FS#2864]: autopause and manual pausing conflict with eachother
-Fix: new game + pause on new game + autopause make the game not unpause on the first join
16 years ago
yexo 965b8196fb (svn r16176) -Fix: forbid joining AI companies via the 'move' and 'join' console commands. 16 years ago
yexo f6070e2261 (svn r16175) -Fix: Disable the join button in the multiplayer lobby for AI companies, since joining an AI company is not possible. 16 years ago
rubidium a25684b833 (svn r15967) -Codechange: do not access NetworkSocketHandler::has_quit directly 16 years ago
rubidium a76218eab9 (svn r15947) -Codechange: replace uint32 client_ip with NetworkAddress client_address. 16 years ago
rubidium bc7a870a61 (svn r15931) -Codechange: let the host and ban lists use of SmallVector. 16 years ago
peter1138 3b748ec62f (svn r15848) -Feature: Add autoclean_novehicles setting which will, when autoclean_companies is true, remove any company with no vehicles and no active client after autoclean_novehciles-months. 16 years ago
rubidium f524d39963 (svn r15773) -Fix [FS#2475]: number of active clients wasn't always properly 16 years ago
rubidium c3e87f345d (svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too 16 years ago
smatz 154b4da4cc (svn r15628) -Fix [FS#2705]: kicking/banning a client from the Client list window crashed the server 16 years ago
rubidium 89e1afdaa0 (svn r15428) -Codechange: consistently use colour instead of having both color and colour. 16 years ago
rubidium 6ad9fcc6ec (svn r15395) -Fix [FS#2611] (r15377): one couldn't reset companies anymore in a 'dedicated' server. 16 years ago
smatz 9021c20b5e (svn r15299) -Cleanup: remove many redundant includes 16 years ago
rubidium bf45d44c3c (svn r15247) -Change: show a lock near the password/join button in the company window whenever the company is password protected 16 years ago
rubidium 2722cabcce (svn r15242) -Feature: allow moving clients between companies/spectators by the server and the clients themselves (dihedral) 16 years ago
rubidium 840217d717 (svn r15200) -Feature: give server admins a tool to combat profanity in nick names (based on patch by dihedral) 16 years ago
rubidium 01e92ac32a (svn r15052) -Codechange: move the implementation of Send_CompanyInformation to network_server.cpp as the server's the one that sends that information 16 years ago
truebrain c2406cd42d (svn r15027) -Merge: tomatos and bananas left to be, here is NoAI for all to see.
NoAI is an API (a framework) to build your own AIs in. See:
   http://wiki.openttd.org/wiki/index.php/AI:Main_Page
 With many thanks to:
  - glx and Rubidium for their syncing, feedback and hard work
  - Yexo for his feedback, patches, and AIs which tested the system very deep
  - Morloth for his feedback and patches
  - TJIP for hosting a challenge which kept NoAI on track
  - All AI authors for testing our AI API, and all other people who helped in one way or another
-Remove: all old AIs and their cheats/hacks
16 years ago
rubidium 28ea38ae55 (svn r14949) -Cleanup: pointer coding style 16 years ago
rubidium 0e1127e8b5 (svn r14915) -Codechange: unify the receiving and sending of commands, and thus unifying most of the validity checking too. 16 years ago