Commit Graph

185 Commits

Author SHA1 Message Date
smatz
871107f529 (svn r16327) -Codechange: replace IsValidPoolItemID(index) by PoolItem::IsValidID(index) 2009-05-17 01:00:56 +00:00
smatz
6221d74644 (svn r16325) -Codechange: replace GetPoolItem(index) by PoolItem::Get(index) 2009-05-16 23:34:14 +00:00
rubidium
101af1f9b5 (svn r16250) -Fix (r16242): do not try to unpause when paused for a joining company 2009-05-07 17:08:41 +00:00
rubidium
2664f2a2d9 (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
2009-05-06 15:06:57 +00:00
rubidium
169a003e9a (svn r16135) -Fix [FS#2856]: always give the server an already resolved 'client address' so we can be sure the client address is always resolved 2009-04-24 10:52:51 +00:00
rubidium
2663ad302f (svn r16022) -Fix (r15159): sometimes the unregister "query" thread could be delayed so much that the network stuff was already closed and the packet would never reach the master server causing the server to appear online longer than necessary. 2009-04-10 20:18:48 +00:00
rubidium
7d3db3ee91 (svn r16014) -Feature(-ish): allow binding to several IPs; [network]:server_bind_ip doesn't exist anymore. Add the IPs/hostnames to [server_bind_addresses] 2009-04-10 12:56:55 +00:00
rubidium
ebe0f9e7f7 (svn r15998) -Codechange: some coding style updates 2009-04-09 01:16:15 +00:00
rubidium
e779c56e31 (svn r15989) -Fix (r15987: segfault due to uninitialised sockets. 2009-04-08 21:03:00 +00:00
rubidium
08e37a6f10 (svn r15987) -Fix: make the master socket only listen on the IP the server is bound to. 2009-04-08 19:36:51 +00:00
rubidium
9d6edae94d (svn r15981) -Fix: don't print the address family when writing the IP+port to the config file. 2009-04-08 12:09:07 +00:00
rubidium
a5a424ce28 (svn r15978) -Codechange: support parsing [] enclosed IPv6 addresses. 2009-04-08 01:22:57 +00:00
rubidium
8cf88876ef (svn r15973) -Codechange: make it possible to listen on multiple TCP sockets 2009-04-08 00:05:16 +00:00
rubidium
c0f8214218 (svn r15972) -Codechange: remove unneeded parameter 2009-04-08 00:03:05 +00:00
rubidium
2a6e9288fd (svn r15971) -Codechange: make it possible for UDP socket handlers to bind to multiple sockets. 2009-04-07 20:27:13 +00:00
rubidium
82f8badc07 (svn r15969) -Codechange: make the list of broadcast addresses virtually unlimited. 2009-04-07 19:06:36 +00:00
rubidium
22d9306889 (svn r15967) -Codechange: do not access NetworkSocketHandler::has_quit directly 2009-04-07 18:23:14 +00:00
rubidium
c9ebf14ba5 (svn r15947) -Codechange: replace uint32 client_ip with NetworkAddress client_address. 2009-04-04 00:48:48 +00:00
rubidium
2fd9f0fffa (svn r15946) -Codechange: move netmask matching to NetworkAddress and add some support for IPv6 netmask matching. 2009-04-04 00:47:08 +00:00
rubidium
1463b00b48 (svn r15940) -Codechange: move setting reuse address to the binding process. 2009-04-03 17:02:29 +00:00
rubidium
5386fe1a1c (svn r15932) -Codechange: show ip:port as (fallback) servername instead of only the ip. This way you can clearly see there aren't any duplicates. 2009-04-03 12:54:38 +00:00
rubidium
89d0eca6b7 (svn r15931) -Codechange: let the host and ban lists use of SmallVector. 2009-04-03 12:49:58 +00:00
rubidium
11723c40b2 (svn r15926) -Codechange: make the broadcast IP list less AF dependent. 2009-04-03 11:02:41 +00:00
rubidium
47602d7b60 (svn r15925) -Codechange: remove _network_server_bind_ip as it's pretty AF dependant. 2009-04-03 10:29:56 +00:00
rubidium
632d74c6b1 (svn r15922) -Codechange: unify the ways to listen on a socket 2009-04-03 01:24:52 +00:00
rubidium
ba5aafb9bb (svn r15921) -Fix: some OSes don't like sizeof(sockaddr_storage) but want sizeof(sockaddr) or whatever is 'valid' for the given protocol 2009-04-03 00:33:00 +00:00
rubidium
beef5da970 (svn r15918) -Fix (r15917): comparing IPs sometimes failed due to 'random' data (as spotted by SpComb) 2009-04-02 23:03:18 +00:00
rubidium
c5160c7c8e (svn r15917) -Codechange: remove the latest traces of NetworkAddress::GetIP. 2009-04-02 20:39:30 +00:00
rubidium
1e205e01b8 (svn r15916) -Codechange: let the network game list use NetworkAddress 2009-04-02 20:17:46 +00:00
rubidium
ee4a660b0c (svn r15773) -Fix [FS#2475]: number of active clients wasn't always properly 2009-03-19 23:32:39 +00:00
rubidium
b25a4f8231 (svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too 2009-03-15 00:32:18 +00:00
rubidium
4a5c4f6089 (svn r15644) -Fix [FS#2710]: closing a network connection twice in the case that sending packets starts failing while disconnecting 2009-03-08 16:14:14 +00:00
smatz
642dc1ea5e (svn r15640) -Fix [FS#2712]: game crashes when network pools are empty, so always allocate at least one pool block 2009-03-07 22:40:47 +00:00
rubidium
66a8c0a132 (svn r15577) -Codechange: bool _networking belongs in network/ not gfx.cpp 2009-02-25 00:48:04 +00:00
rubidium
c5677da94d (svn r15529) -Fix [FS#2644]: the local command queue didn't get properly cleaned when leaving a game meaning you could end up executing commands of the previous network game. 2009-02-20 00:03:29 +00:00
rubidium
8dae160d0f (svn r15425) -Codechange: some color->colour changes and type safety. 2009-02-09 02:09:47 +00:00
smatz
0d3f5e6e74 (svn r15299) -Cleanup: remove many redundant includes 2009-01-31 20:16:06 +00:00
rubidium
04709f2798 (svn r15242) -Feature: allow moving clients between companies/spectators by the server and the clients themselves (dihedral) 2009-01-23 22:18:06 +00:00
peter1138
727ffeedc9 (svn r15194) -Fix: Don't count dedicated server as a spectator 2009-01-21 10:46:21 +00:00
rubidium
eeb38a8e3a (svn r15176) -Fix [FS#2554]: querying the content server could free when resolving the hostname or connecting takes long/is timing out. 2009-01-20 16:51:55 +00:00
rubidium
28a641066e (svn r15163) -Change/Fix: use a non-blocking method to resolve the hostname and connect to game servers. 2009-01-20 11:28:18 +00:00
glx
24351416f6 (svn r15160) -Fix (r15157): port != IP 2009-01-20 04:01:07 +00:00
rubidium
5f3772a42c (svn r15157) -Codechange: wrap the hostname/ip and port into a single structure so we can pass either one of them and not convert an ip to a string and then back again. 2009-01-20 01:32:06 +00:00
rubidium
9b463c26de (svn r15155) -Codechange: remove unused return value 2009-01-19 22:01:37 +00:00
rubidium
3a13b75e37 (svn r15126) -Feature: downloading content from a central server (content.openttd.org) where authors can upload they NewGRFS/AI etc. This should make joining servers that use only NewGRFs that are distributed via this system easier as the players can download the NewGRFs from in the game. It should also make it easier to see whether there are updates for NewGRFs and make the necessary updates. 2009-01-17 16:53:32 +00:00
peter1138
a039ec0d21 (svn r15094) -Feature: Add support for IP range bans using CIDR notation. 2009-01-15 18:11:26 +00:00
rubidium
11da45ee55 (svn r14949) -Cleanup: pointer coding style 2009-01-10 00:31:47 +00:00
rubidium
cda853872a (svn r14944) -Cleanup: add spaces around some operators 2009-01-09 22:56:28 +00:00
rubidium
c08f520acf (svn r14943) -Cleanup: remove some rogue spaces/replace some rogue tabs with spaces 2009-01-09 22:48:57 +00:00
rubidium
d4b6cc997d (svn r14910) -Codechange: merge the command queue handling into a single location 2009-01-08 13:57:50 +00:00
rubidium
3c6add5293 (svn r14772) -Codechange: make the "dump log of game to reproduce" desync debug stuff a runtime configurable debug option instead of a compile time option. 2008-12-29 21:50:25 +00:00
rubidium
ad1c52abf8 (svn r14771) -Fix (r14764): resolving of error types to error messages kinda failed :( 2008-12-29 21:41:20 +00:00
rubidium
a25e3f8d70 (svn r14764) -Codechange: make the '***' chat messages like "Game paused (not enough players)" fully translateable. 2008-12-29 10:37:53 +00:00
rubidium
87e5a8b52b (svn r14754) -Codechange: get rid of _cmd_text and just pass it as (optional) parameter. 2008-12-28 14:37:19 +00:00
rubidium
ece37ca2c0 (svn r14731) -Fix: don't initialise UDP multiple times without closing it. 2008-12-23 20:58:03 +00:00
rubidium
afddfcb2b1 (svn r14730) -Codechange: remove the need for networkclientsockets and networkclientinfo structs to be in a contiguous piece of memory and put them in a pool.
-Note: 255 should really be enough for now... making it any more means network protocol bumps.
2008-12-23 20:52:27 +00:00
rubidium
f8f7febe41 (svn r14725) -Change: make it clearer why (and that) MAX_CLIENTS isn't the amount of slots in the array, but one less as a dedicated server takes a slot too. 2008-12-23 11:55:46 +00:00
rubidium
9476a49763 (svn r14723) -Codechange: shuffling some stuff around to reduce indirect #include dependencies. 2008-12-23 11:06:52 +00:00
rubidium
d501a20065 (svn r14722) -Codechange: s/DEREF_CLIENT/GetNetworkClientSocket/ 2008-12-23 10:42:06 +00:00
rubidium
ae96ca635c (svn r14721) -Codechange: s/NetworkTCPSocketHandler/NetworkClientSocket/ as it's (way) more descriptive what it's used for. 2008-12-23 09:47:42 +00:00
rubidium
d95a485108 (svn r14720) -Codechange: s/FOR_ALL_CLIENTS/FOR_ALL_CLIENT_SOCKETS/ as the latter describes the name more precisely. 2008-12-23 09:02:41 +00:00
rubidium
b4734ee9a4 (svn r14719) -Codechange: replace DEREF_CLIENT with an instance function and replace looping socket structs with info structs when the loop is only interested in the info structs (i.e. not derefing the info from sockets when one can loop info directly and the socket isn't used) 2008-12-23 08:39:30 +00:00
rubidium
94e7f41a9d (svn r14718) -Change: remove some direct network core variable accesses from non-network locations. 2008-12-22 21:38:03 +00:00
rubidium
f49cc67f83 (svn r14717) -Change: more 'Index' -> ClientID to not confuse ClientID and ClientIndex 2008-12-22 21:30:21 +00:00
rubidium
a687667448 (svn r14714) -Codechange: only allocate the company network "state" variables (password/months not used) when needed, i.e. only for servers. 2008-12-22 20:42:02 +00:00
rubidium
abc903d625 (svn r14712) -Codechange: split server and client side w.r.t. the storage of network related company information. 2008-12-22 18:40:57 +00:00
rubidium
782b80eff7 (svn r14709) -Codechange: make a clearer distinction between 'unique' client identification ids and the indices into the clients/client info arrays. 2008-12-22 12:59:31 +00:00
skidd13
706dd0f86c (svn r14555) -Codechange: replace ttd_strlcat and ttd_strlcpy with strecat and strecpy where direct conversion is possible 2008-11-02 11:20:15 +00:00
smatz
7a031b60cd (svn r14486) -Fix (r13343)(r14484): compilation with desync debug was broken 2008-10-18 14:16:29 +00:00
rubidium
c9a82ac3e7 (svn r14423) -Codechange: also do r14221 for the strings. 2008-09-30 21:18:28 +00:00
rubidium
b650a86e58 (svn r14422) -Codechange: also reflect the changes of r14421 in the filenames. 2008-09-30 20:51:04 +00:00
rubidium
3b798599b6 (svn r14421) -Codechange: rename all player variables/types to company *or* client so it is immediatelly clear which one you are working with. 2008-09-30 20:39:50 +00:00
rubidium
ea1f180a55 (svn r14199) -Codechange: split fileio.h into fileio_type.h and fileio_func.h so not everything that includes saveload.h needs to include everything else too. 2008-08-31 10:50:05 +00:00
rubidium
97c184f8f8 (svn r14063) -Codechange: replace some "magic" constants with enumified constants. 2008-08-13 06:05:01 +00:00
rubidium
d0c1a989a4 (svn r14047) -Codechange: move chatmessage handling to the network directory as that's the only case chat messages are used. Furthermore remove any trace of chatmessages when compiling without network support. 2008-08-11 22:45:11 +00:00
rubidium
c88cb1daa0 (svn r13988) -Codechange: move the to IP resolving functions to a separate file. 2008-08-04 12:56:38 +00:00
rubidium
3a799389eb (svn r13731) -Codechange: make a pool of the array of players. 2008-07-18 16:40:29 +00:00
rubidium
d06529ef4d (svn r13719) -Codechange: rename IsValidPlayer to IsValidPlayerID in line with all other structs/classes that are in a pool. 2008-07-17 20:13:01 +00:00
rubidium
2e4f32023c (svn r13712) -Fix: enforce the length restrictions of company and president name in the commands too. 2008-07-17 11:19:20 +00:00
belugas
cb452bcc7d (svn r13682) -Codechange: -Codechange: remove a now useless variable(dih). 2008-07-08 23:07:58 +00:00
rubidium
657bbf305e (svn r13433) -Codechange: remove a now useless global variable.
-Fix: MP advertising was not advertising.
2008-06-09 12:17:01 +00:00
rubidium
abf2b0efc3 (svn r13369) -Codechange: remove duplication of network configuration settings between NetworkSettings and NetworkGameInfo.
-Fix: failure of changing the server password during games because the password wasn't duplicated properly.
2008-06-03 08:04:35 +00:00
rubidium
6d90affce0 (svn r13344) -Codechange: remove some code duplication. 2008-05-30 20:08:32 +00:00
rubidium
2f3b88ef9a (svn r13343) -Codechange: reorder/move variable/functions in the network headers so that nothing from the network directory needs to include basically all network headers. 2008-05-30 18:20:26 +00:00
rubidium
c33164831d (svn r13334) -Codechange: move the network settings variables from network/network_internal to settings. 2008-05-29 20:21:28 +00:00
rubidium
923e21129c (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games. 2008-05-29 15:13:28 +00:00
rubidium
8c9cc415e3 (svn r13255) -Codechange: move _opt to _settings. 2008-05-25 22:36:44 +00:00
rubidium
4625695653 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
-Codechange: move all Settings into substructs of _settings in a way that they are logically grouped.
2008-05-25 19:17:03 +00:00
rubidium
6884f9cb41 (svn r13229) -Codechange: replace some global variables that are only initialised once and always with the same value with enums. 2008-05-24 10:35:15 +00:00
rubidium
6c20f77330 (svn r13228) -Codechange: split console.h. 2008-05-24 10:15:06 +00:00
rubidium
7ccda80b0b (svn r12986) -Codechange: move the landscape and transport related types from openttd.h to their own headers. 2008-05-07 09:07:19 +00:00
rubidium
d03994098b (svn r12971) -Documentation: add @file in files that missed them and add something more than whitespace as description of files that don't have a description. 2008-05-06 15:11:33 +00:00
smatz
297f99e100 (svn r12944) -Codechange: use rev.h instead of externs at many places 2008-05-04 21:53:36 +00:00
rubidium
1b2773445d (svn r12765) -Codechange: move some stuff out of variables.h that required including other headers in variables.h. 2008-04-18 10:16:51 +00:00
rubidium
9d8fa486af (svn r12761) -Codechange: lots of minor whitespace coding style fixes around operators. 2008-04-18 04:37:06 +00:00
rubidium
44f4ebffed (svn r12017) -Fix: when you have more than 9 network interfaces you'll enter the wonderfull world of overflows. 2008-01-29 21:43:22 +00:00
rubidium
3b2145aafe (svn r12004) -Codechange: refactor the random functions to reduce code duplication. 2008-01-29 00:27:25 +00:00
rubidium
392d59f6a9 (svn r11840) -Codechange: split network.h so not everything in there needs to be included when wanting to know whether we are a server. 2008-01-13 21:51:53 +00:00
rubidium
dc87b05e8c (svn r11834) -Codechange: only include settings_type.h if needed. 2008-01-13 14:37:30 +00:00
rubidium
079abbd04b (svn r11829) -Feature: allow reloading openttd.cfg when starting a new game on a dedicated server. Patch by dihedral. 2008-01-13 01:39:22 +00:00