summaryrefslogtreecommitdiff
path: root/src/network/network_udp.h
AgeCommit message (Collapse)Author
2021-07-10Remove: old server listing via Master ServerPatric Stout
This removes all UDP from the game except for a local broadcast to find LAN games. So long Master Server, and tnx for all the fish!
2021-07-10Remove: old server announcement to Master ServerPatric Stout
As we now use the Game Coordinator for announcements, there is no longer a need to use the Master Server for this.
2021-05-05Codechange: use connection_string in favour of NetworkAddress (#9197)Patric Stout
We now resolve the connection_string to a NetworkAddress in a much later state. This means there are fewer places constructing a NetworkAddress. The main benefit of this is in later PRs that introduce different types of NetworkAddresses. Storing this in things like NetworkGameList is rather complex, especially as NetworkAddress has to be mutable at all times. Additionally, the NetworkAddress is a complex object to store simple information: how to connect to this server.
2021-04-12Change: move some things only relevant to UDP from network.cpp to ↵Rubidium
network_udp.cpp
2019-11-10Cleanup: Removed SVN headersS. D. Cloudt
2019-03-20Remove: ENABLE_NETWORK switchPatric Stout
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.
2012-01-04(svn r23751) -Codechange: rename NetworkUDPGameLoop to a more descriptive ↵rubidium
name, and move the UDP specific bits to network_udp
2010-01-15(svn r18809) -Codechange/Cleanup: remove unneeded headers from some files, ↵rubidium
if a header require a header make it include that header
2009-08-21(svn r17248) -Fix: add GPL license notice where appropriaterubidium
2009-04-10(svn r16022) -Fix (r15159): sometimes the unregister "query" thread could be ↵rubidium
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-08(svn r15987) -Fix: make the master socket only listen on the IP the server ↵rubidium
is bound to.
2009-01-20(svn r15157) -Codechange: wrap the hostname/ip and port into a single ↵rubidium
structure so we can pass either one of them and not convert an ip to a string and then back again.
2009-01-10(svn r14949) -Cleanup: pointer coding stylerubidium
2008-05-06(svn r12971) -Documentation: add @file in files that missed them and add ↵rubidium
something more than whitespace as description of files that don't have a description.
2007-03-07(svn r9050) -Codechange: Foo(void) -> Foo()rubidium
2007-02-02(svn r8543) -Codechange: make a real difference between querying the server ↵rubidium
via UDP and TCP.
2007-01-12(svn r8078) -Codechange: rewrite UDP part of the network code to make use ↵rubidium
classes. This is only one of the many steps to really cleanup the network code.
2007-01-02(svn r7759) -Merge: makefile rewrite. This merge features:rubidium
- A proper ./configure, so everything needs to be configured only once, not for every make. - Usage of makedepend when available. This greatly reduces the time needed for generating the dependencies. - A generator for all project files. There is a single file with sources, which is used to generate Makefiles and the project files for MSVC. - Proper support for OSX universal binaries. - Object files for non-MSVC compiles are also placed in separate directories, making is faster to switch between debug and release compiles and it does not touch the directory with the source files. - Functionality to make a bundle of all needed files for for example a nightly or distribution of a binary with all needed GRFs and language files. Note: as this merge moves almost all files, it is recommended to make a backup of your working copy before updating your working copy.