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
rubidium
d4e6a6bf57
(svn r11828) -Codechange: include table/* as the last includes and remove an unneeded include from openttd.h.
2008-01-13 01:21:35 +00:00
rubidium
ac528411df
(svn r11818) -Codechange: split player.h into smaller pieces.
2008-01-12 14:10:35 +00:00
rubidium
04f936c2c6
(svn r11811) -Fix: make compilation without networking work again (and thus move the debugdumpcommand stuff out of the network 'area').
2008-01-11 00:30:32 +00:00
rubidium
a3ccdcea36
(svn r11777) -Codechange: split the string header and make do not include it when it's not necessary.
2008-01-07 14:23:25 +00:00
glx
91be5d7531
(svn r11762) -Fix: compilation with DEBUG_DUMP_COMMANDS was broken
2008-01-05 21:42:34 +00:00
rubidium
b9046c97fb
(svn r11702) -Codechange: move all date related stuff to date*.
2007-12-26 13:50:40 +00:00
rubidium
2786d789a1
(svn r11701) -Codechange: removal unnecessary inclusions of map.h (and split map.h).
2007-12-26 11:45:43 +00:00
skidd13
7963963d98
(svn r11695) -Codechange: Converted the md5 algorithm to OOP
...
-Codechange: Adapt the md5 algorithm to the OpenTTD source
2007-12-25 13:59:21 +00:00
rubidium
429521a7d1
(svn r11692) -Codechange: move some functions from 'functions.h' to a more logical place and remove about 50% of the includes of 'functions.h'
2007-12-25 11:26:07 +00:00
rubidium
6a9e77e079
(svn r11680) -Codechange: refactor more out of openttd.h and functions.h.
2007-12-21 22:50:51 +00:00
rubidium
9e9cfe6e59
(svn r11677) -Codechange: move price and command related types/functions to their respective places.
2007-12-21 21:50:46 +00:00
rubidium
433a9f3c09
(svn r11675) -Codechange: split the string types from the string functions.
2007-12-21 19:49:27 +00:00
rubidium
42dbdbb7f9
(svn r11584) -Change: add some extra checking in the hope to find the cause of FS#1482.
2007-12-06 22:29:47 +00:00
rubidium
9e7931f6ea
(svn r11089) -Codechange: add revision detection to MSVC.
2007-09-12 07:11:48 +00:00
rubidium
0fed821efb
(svn r10932) -Codechange: replace "text" with "chat" for the chat related function and variables.
2007-08-19 09:38:30 +00:00
rubidium
e1bdad1e57
(svn r10498) -Fix [FS#1008]: remove inconsistency between a warning and the actual behaviour.
2007-07-10 07:46:58 +00:00
rubidium
3b52a6bfc4
(svn r10462) -Add: a command dumper/loader that could be enabled compile-time and server side only to aid debugging some desyncs, i.e. dump the stream of commands so it could be replayed in exactly the same way later. This should primarily be used to make desyncs more easily reproducable, so it can be properly debugged.
2007-07-07 10:06:10 +00:00
glx
c1b898392e
(svn r9716) -Add: server_lang in [network] section of openttd.cfg, so dedicated servers can have the little lang flag.
2007-04-25 17:40:06 +00:00
rubidium
80ef389080
(svn r9378) -Fix [FS#688] (r9038): cancel in password queries reduces amount of players in the network game when they haven't joined the game yet.
2007-03-20 20:11:17 +00:00
rubidium
36bb92ae24
(svn r9050) -Codechange: Foo(void) -> Foo()
2007-03-07 11:47:46 +00:00
celestar
f8e7d08885
(svn r9016) [SunOS] -Fix: Don't use a struct-member that doesn't exist.
...
-Documentation: Updated readme.txt for SunOS 5.10 (aka Solaris 10)
Note: With this commit, building and running on Solaris 10 works, thus
we officially support this OS now :)
2007-03-05 09:35:45 +00:00
rubidium
66487d59fd
(svn r8949) -Codechange: only test the first NETWORK_REVISION_LENGTH - 1 characters when determining network compatability. This makes it possible to have 'long' branch names while still being able to play network games.
2007-03-01 00:58:09 +00:00
truelight
0d91ed68a9
(svn r8674) [PSP] -Add: added network code for PSP, based on the work of Turulo
...
-Add: added general header-inclusing for PSP
2007-02-11 13:57:35 +00:00
truelight
c46a1cc2f6
(svn r8631) -Add: added parameter -l ip[:port] to ./openttd, which redirects DEBUG() to a remote connection over TCP
...
For example, launch on 192.168.0.1 with, say, netcat a listener: netcat -l -p 3982
Launch OpenTTD on a remote host (say, PSP): ./openttd -l 192.168.0.1 -d9
And you get all debug information on 192.168.0.1. Very useful for debugging Portable systems.
2007-02-08 12:27:53 +00:00
rubidium
6a820a30d1
(svn r8543) -Codechange: make a real difference between querying the server via UDP and TCP.
2007-02-02 21:04:50 +00:00
rubidium
59f4f056df
(svn r8525) -Codechange: make NetworkSend_Packet(s) and NetworkRecv_Packet functions of NetworkTCPSocketHandler.
2007-02-01 23:50:15 +00:00
rubidium
99f860e686
(svn r8521) -Codechange: initial step in converting Packet to a class; make and use constructors and functions related to the reading/saving the packet size.
2007-02-01 22:30:35 +00:00
rubidium
15980fc023
(svn r8520) -Fix/Feature: requery gameservers that did not respond to their first query.
2007-02-01 21:04:40 +00:00
rubidium
86b046864a
(svn r8461) -Feature: check for NewGRF compatability before actually downloading the map from a game server when connecting from the command prompt and internal console.
2007-01-30 17:22:56 +00:00
rubidium
269c1a58a0
(svn r8372) -Fix (8361): NUM_LANDSCAPE comes (via some detour) from openttd.h, which does not exist in the masterserver/updater.
2007-01-23 14:47:38 +00:00
Darkvater
1f3ea708c3
(svn r8168) -Regression (r6783): ParseConnectionstring didn't use the port parameter if a player was also specified. (both IP#Player:Port and IP:Port#Player btw)
2007-01-16 23:01:06 +00:00
rubidium
f66b373b52
(svn r8083) -Codechange: make a NetworkSocketHandler as base for all sockets and move a little of NetworkClientState functionality to the NetworkSocketHandler. Move the rest of the NetworkClientState to the new NetworkTCPSocketHandler class/struct, which is not yet implemented in an object oriented manner. The UDP socket handler now extends the NetworkSocketHandler instead of having a reference to a NetworkClientState.
2007-01-12 20:19:49 +00:00
rubidium
c48aa5db45
(svn r8078) -Codechange: rewrite UDP part of the network code to make use classes. This is only one of the many steps to really cleanup the network code.
2007-01-12 14:30:01 +00:00
rubidium
f35ed4bbc2
(svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
2007-01-10 18:56:51 +00:00
KUDr
e373ea7096
(svn r8033) [cpp] - Prepare for merge from branches/cpp (all .c files renamed to .cpp)
2007-01-10 18:12:09 +00:00