S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
5 years ago
Jonathan G Rennison
a1d36b02f0
Network: Add state checksum which is check in network sync
5 years ago
Jonathan G Rennison
674732cd68
Merge: Codechange: Use null pointer literal instead of the NULL macro
6 years ago
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
6 years ago
Jonathan G Rennison
ba34ec7ade
Merge branch 'master' into jgrpp
...
Replace build and refit, and group collapse implementations
Fix template creation build and refit
# Conflicts:
# Makefile.bundle.in
# config.lib
# src/animated_tile.cpp
# src/blitter/32bpp_anim.hpp
# src/blitter/32bpp_base.hpp
# src/blitter/8bpp_base.hpp
# src/blitter/null.hpp
# src/build_vehicle_gui.cpp
# src/command.cpp
# src/command_func.h
# src/console_gui.cpp
# src/core/smallstack_type.hpp
# src/date.cpp
# src/debug.cpp
# src/genworld_gui.cpp
# src/ground_vehicle.hpp
# src/group_gui.cpp
# src/lang/korean.txt
# src/linkgraph/linkgraph_gui.h
# src/main_gui.cpp
# src/misc_gui.cpp
# src/network/core/game.h
# src/network/core/packet.cpp
# src/network/core/udp.cpp
# src/network/core/udp.h
# src/network/network_content.cpp
# src/network/network_type.h
# src/network/network_udp.cpp
# src/newgrf_house.h
# src/openttd.cpp
# src/order_cmd.cpp
# src/order_gui.cpp
# src/os/unix/crashlog_unix.cpp
# src/os/windows/crashlog_win.cpp
# src/osk_gui.cpp
# src/pathfinder/opf/opf_ship.cpp
# src/rail_cmd.cpp
# src/rail_gui.cpp
# src/saveload/saveload.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/smallmap_gui.h
# src/station_base.h
# src/station_cmd.cpp
# src/table/gameopt_settings.ini
# src/table/newgrf_debug_data.h
# src/table/settings.ini
# src/timetable_gui.cpp
# src/toolbar_gui.cpp
# src/train_gui.cpp
# src/vehicle.cpp
# src/vehicle_gui.cpp
# src/vehiclelist.cpp
# src/viewport.cpp
# src/widgets/dropdown.cpp
# src/window_gui.h
6 years ago
Patric Stout
e3c639a09f
Remove: ENABLE_NETWORK switch
...
This switch has been a pain for years. Often disabling broke
compilation, as no developer compiles OpenTTD without, neither do
any of our official binaries.
Additionaly, it has grown so hugely in our codebase, that it
clearly shows that the current solution was a poor one. 350+
instances of "#ifdef ENABLE_NETWORK" were in the code, of which
only ~30 in the networking code itself. The rest were all around
the code to do the right thing, from GUI to NewGRF.
A more proper solution would be to stub all the functions, and
make sure the rest of the code can simply assume network is
available. This was also partially done, and most variables were
correct if networking was disabled. Despite that, often the #ifdefs
were still used.
With the recent removal of DOS, there is also no platform anymore
which we support where networking isn't working out-of-the-box.
All in all, it is time to remove the ENABLE_NETWORK switch. No
replacement is planned, but if you feel we really need this option,
we welcome any Pull Request which implements this in a way that
doesn't crawl through the code like this diff shows we used to.
6 years ago
Jonathan G Rennison
6342099c4d
Allow 256 NewGRFs in multiplayer
...
Add extended network format for server info
Add general UDP packet fragmentation system
Fix map dimensions >= 64k
Increase length of server revision string
Maintain backwards compatibility with trunk for advertisement/server listing
6 years ago
Jonathan G Rennison
3001595916
Change chat arbitrary data field from an int64 to a struct.
8 years ago
rubidium
a0eaaf80b7
(svn r26488) -Codechange: perform the appropriate length checks when getting a client name
11 years ago
rubidium
160ad31028
(svn r26488) -Codechange: perform the appropriate length checks when getting a client name
11 years ago
frosch
198b8897b8
(svn r26370) -Doc: Desync debugging and command replaying.
11 years ago
frosch
c6ce57e8a7
(svn r26370) -Doc: Desync debugging and command replaying.
11 years ago
rubidium
73474728e3
(svn r26057) -Fix: a number of possibly uninitialised variables
11 years ago
rubidium
b3e93d6520
(svn r26057) -Fix: a number of possibly uninitialised variables
11 years ago
rubidium
bebf2291db
(svn r26056) -Fix: a number of possibly uninitialised variables
11 years ago
rubidium
2e54c8fdfa
(svn r26056) -Fix: a number of possibly uninitialised variables
11 years ago
rubidium
5791feadf0
(svn r24070) -Fix [FS#5098]: the 'last joined' server was not properly selected anymore (adf88)
13 years ago
rubidium
1adb9a5c85
(svn r24070) -Fix [FS#5098]: the 'last joined' server was not properly selected anymore (adf88)
13 years ago
rubidium
abdd5ebfa7
(svn r23843) -Fix: minor issue with replaying ;)
13 years ago
rubidium
b888027ddd
(svn r23843) -Fix: minor issue with replaying ;)
13 years ago
rubidium
1d098d8ce2
(svn r23822) -Fix-ish: when replaying make sure companies get created even if their creating client doesn't exist during the replay
13 years ago
rubidium
a66debfadd
(svn r23822) -Fix-ish: when replaying make sure companies get created even if their creating client doesn't exist during the replay
13 years ago
rubidium
61a3963361
(svn r22424) -Document: some more bits
14 years ago
rubidium
c4aa943aaa
(svn r22424) -Document: some more bits
14 years ago
rubidium
9328b8b63d
(svn r22363) -Codechange: NetworkFindClientStateFromClientID -> NetworkClientSocket::GetByClientID
14 years ago
rubidium
f1d0c1a746
(svn r22363) -Codechange: NetworkFindClientStateFromClientID -> NetworkClientSocket::GetByClientID
14 years ago
rubidium
43c8073551
(svn r21886) -Codechange: move documentation towards the code to make it more likely to be updated [n].
14 years ago
rubidium
eb299736c1
(svn r21886) -Codechange: move documentation towards the code to make it more likely to be updated [n].
14 years ago
rubidium
a5108a1fa2
(svn r21853) -Codechange: HashCurrentCompanyPassword is only used by servers, so move it to network_server.* (dihedral)
14 years ago
rubidium
e54a1f6721
(svn r21853) -Codechange: HashCurrentCompanyPassword is only used by servers, so move it to network_server.* (dihedral)
14 years ago
rubidium
692e61d1dc
(svn r21701) -Codechange: ConsoleColour = TextColour, so make it that way and remove some unneeded casts
14 years ago
rubidium
b25cf57542
(svn r21701) -Codechange: ConsoleColour = TextColour, so make it that way and remove some unneeded casts
14 years ago
rubidium
9012b54fa2
(svn r21029) -Codechange: split the map downloading packet + 3-state enum into 3 separate packets
14 years ago
rubidium
2cd67a51ac
(svn r21029) -Codechange: split the map downloading packet + 3-state enum into 3 separate packets
14 years ago
rubidium
332a1bfdea
(svn r20936) -Codechange: make server side packet sending methods class methods
14 years ago
rubidium
f712055002
(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
9858d699a3
(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
bda26d03b5
(svn r20934) -Codechange: move NetworkGetClientName to the server's socket
14 years ago
rubidium
1ae97e4d0e
(svn r20933) -Codechange: move some more client related methods and such to network_client.cpp
14 years ago
rubidium
f555e6d72e
(svn r20933) -Codechange: move some more client related methods and such to network_client.cpp
14 years ago
rubidium
6ff39fc5ec
(svn r20929) -Codechange: make NetworkCloseClient a class method
14 years ago
rubidium
7ba07d9573
(svn r20929) -Codechange: make NetworkCloseClient a class method
14 years ago
rubidium
8f4638ed0f
(svn r20925) -Codechange: make the client send commands have a slightly more sensible name
14 years ago
rubidium
515edee17c
(svn r20925) -Codechange: make the client send commands have a slightly more sensible name
14 years ago
alberth
e45a8f61cc
(svn r20674) -Codechange: Remove declared functions that do not exist (anymore) otherwise.
14 years ago
alberth
be59c90e86
(svn r20674) -Codechange: Remove declared functions that do not exist (anymore) otherwise.
14 years ago
rubidium
8f82b2b588
(svn r20549) -Codechange: centralise the handling of the incoming commands (from clients and the server)
14 years ago
rubidium
b594990071
(svn r20549) -Codechange: centralise the handling of the incoming commands (from clients and the server)
14 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
rubidium
088282bcf8
(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
glx
b702b1f3fd
(svn r19596) -Fix (r19593): dedicated server always fast forwarding if compiled without DEBUG_DUMP_COMMANDS
15 years ago
glx
42f5e930d5
(svn r19596) -Fix (r19593): dedicated server always fast forwarding if compiled without DEBUG_DUMP_COMMANDS
15 years ago
rubidium
de155e78e7
(svn r19593) -Codechange: improve loading/executing the desync logs
15 years ago
rubidium
465e3be105
(svn r19593) -Codechange: improve loading/executing the desync logs
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
ab35d95b5a
(svn r19072) -Fix [FS#3599]: possible read/write after free when the client triggered the server to close the connection
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
82fc28f77f
(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
7824727828
(svn r18251) -Codechange: make the join status window big font aware
15 years ago
rubidium
29c65215ed
(svn r18251) -Codechange: make the join status window big font aware
15 years ago
rubidium
b2d7edddfa
(svn r18027) -Codechange: make some unneededly global variables static and remove some unused variables
15 years ago
rubidium
c2221885f4
(svn r18027) -Codechange: make some unneededly global variables static and remove some unused variables
15 years ago
rubidium
67a11a5776
(svn r17699) -Codechange: move #ifdef ENABLE_NETWORK till after the 'generic' includes so compilation without network support doesn't get broken as easily by changes in header files
15 years ago
rubidium
5ff6053326
(svn r17699) -Codechange: move #ifdef ENABLE_NETWORK till after the 'generic' includes so compilation without network support doesn't get broken as easily by changes in header files
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
rubidium
7d24e84a81
(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
rubidium
99d46e0ad7
(svn r17248) -Fix: add GPL license notice where appropriate
15 years ago
rubidium
7fbc33dae1
(svn r17248) -Fix: add GPL license notice where appropriate
15 years ago
rubidium
71c7064ad6
(svn r16601) -Fix [FS#2880]: try 2... hopefully better this time
16 years ago
rubidium
9b156c1bd4
(svn r16601) -Fix [FS#2880]: try 2... hopefully better this time
16 years ago
rubidium
043c3c8b06
(svn r16305) -Codechange: force-enable extra sync checking when random debugging is enable and give the calling location of Chance16(R) instead of the Random call within those functions.
16 years ago
rubidium
a5d6e23e9d
(svn r16305) -Codechange: force-enable extra sync checking when random debugging is enable and give the calling location of Chance16(R) instead of the Random call within those functions.
16 years ago
rubidium
8cd7def31c
(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]
16 years ago
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]
16 years ago
rubidium
f6e27e7274
(svn r15969) -Codechange: make the list of broadcast addresses virtually unlimited.
16 years ago
rubidium
82f8badc07
(svn r15969) -Codechange: make the list of broadcast addresses virtually unlimited.
16 years ago
rubidium
2b7a30f209
(svn r15926) -Codechange: make the broadcast IP list less AF dependent.
16 years ago
rubidium
11723c40b2
(svn r15926) -Codechange: make the broadcast IP list less AF dependent.
16 years ago
rubidium
be8919c968
(svn r15925) -Codechange: remove _network_server_bind_ip as it's pretty AF dependant.
16 years ago
rubidium
47602d7b60
(svn r15925) -Codechange: remove _network_server_bind_ip as it's pretty AF dependant.
16 years ago
rubidium
c3e87f345d
(svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too
16 years ago
rubidium
b25a4f8231
(svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too
16 years ago
rubidium
89e1afdaa0
(svn r15428) -Codechange: consistently use colour instead of having both color and colour.
16 years ago
rubidium
c0a8d09ca7
(svn r15428) -Codechange: consistently use colour instead of having both color and colour.
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
04709f2798
(svn r15242) -Feature: allow moving clients between companies/spectators by the server and the clients themselves (dihedral)
16 years ago
rubidium
206841ba5f
(svn r15163) -Change/Fix: use a non-blocking method to resolve the hostname and connect to game servers.
16 years ago
rubidium
28a641066e
(svn r15163) -Change/Fix: use a non-blocking method to resolve the hostname and connect to game servers.
16 years ago
rubidium
4aabc91c04
(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.
16 years ago
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.
16 years ago
rubidium
eff693d2e9
(svn r15104) -Codechange: unify the resolving of the xyz kbytes/megabytes strings.
16 years ago
rubidium
b1a33a494f
(svn r15104) -Codechange: unify the resolving of the xyz kbytes/megabytes strings.
16 years ago
rubidium
850a2735cc
(svn r15079) -Codechange: split tcp 'backend' and in-game handling like it is for UDP.
16 years ago
rubidium
e18c24cdb5
(svn r15079) -Codechange: split tcp 'backend' and in-game handling like it is for UDP.
16 years ago
rubidium
28ea38ae55
(svn r14949) -Cleanup: pointer coding style
16 years ago
rubidium
11da45ee55
(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
rubidium
427e2d30c5
(svn r14915) -Codechange: unify the receiving and sending of commands, and thus unifying most of the validity checking too.
16 years ago