summaryrefslogtreecommitdiff
path: root/src/network/core/udp.h
AgeCommit message (Collapse)Author
2021-07-10Remove: unused UDP protocol partsPatric Stout
2021-05-13Codechange: [Network] split CloseSocket and CloseConnection more clearly (#9261)Patric Stout
* Codechange: [Network] split CloseSocket and CloseConnection more clearly - CloseSocket now closes the actual OS socket. - CloseConnection frees up the resources to just before CloseSocket. - dtors call CloseSocket / CloseConnection where needed.
2021-05-13Codechange: remove pointless close call due to resolving virtual functions ↵Rubidium
statically in destructors In the destructors of many of the network related classes Close() is called, just like the top class in that hierarchy. However, due to virtual functions getting resolved statically in the destructor it would always call the empty Close() of the top class. Document the other cases where a virtual call is resolved statically.
2021-04-27Codechange: move all NetworkGameInfo related functions to a single filePatric Stout
It currently was a bit scattered over the place. Part of NetworkGameInfo is also the GRF Identifiers that goes with it.
2019-11-10Cleanup: Removed SVN headersS. D. Cloudt
2019-04-10Codechange: Use null pointer literal instead of the NULL macroHenry Wilson
2019-03-24Codechange: Use override keyword in networking classes.peter1138
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.
2013-01-08(svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by ↵planetmaker
Eagle_rainbow)
2011-12-19(svn r23595) -Codechange: add comma after last enum to get a more uniform ↵rubidium
coding style
2011-05-01(svn r22401) -Codechange: replace some defines in the udp code so doxygen ↵rubidium
can create better documentation
2010-11-30(svn r21358) -Codechange: make some network function names conform to coding ↵rubidium
style
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-10-04(svn r17699) -Codechange: move #ifdef ENABLE_NETWORK till after the ↵rubidium
'generic' includes so compilation without network support doesn't get broken as easily by changes in header files
2009-08-21(svn r17248) -Fix: add GPL license notice where appropriaterubidium
2009-06-19(svn r16601) -Fix [FS#2880]: try 2... hopefully better this timerubidium
2009-04-08(svn r15984) -Codechange: prepare the UDP receiver to process multiple types ↵rubidium
of returned server lists.
2009-04-07(svn r15971) -Codechange: make it possible for UDP socket handlers to bind ↵rubidium
to multiple sockets.
2009-04-05(svn r15961) -Codechange: prepare the 'client' side for receiving 'session ↵rubidium
keys' from the masterserver so servers can register with multiple IPs as the same server.
2009-04-03(svn r15922) -Codechange: unify the ways to listen on a socketrubidium
2009-04-02(svn r15915) -Codechange: let the udp code use NetworkAddress.rubidium
2007-02-23(svn r8857) -Documentation: Added some doxygen @file tags, repaired others ↵celestar
(the @file tag MUST be found before any line of code, that includes preprocessor directives).
2007-01-30(svn r8459) -Codechange: move (Send|Recv)GRFIdentifier to ↵rubidium
NetworkSocketHandler, so it can also be used the TCP socket handler.
2007-01-28(svn r8446) -Fix (8445): accidentally made a function that should not be ↵rubidium
abstract abstract.
2007-01-28(svn r8445) -Cleanup: remove some @params from comments as the parameters ↵rubidium
did not exist anymore and add comments to several variables/functions.
2007-01-28(svn r8437) -Codechange: move often duplicated (in MSU) define to the udp ↵rubidium
header.
2007-01-21(svn r8316) -Codechange: move the GRF ID and MD5 checksum from GRFConfig to ↵rubidium
GRFIdentifier so it can be reused.
2007-01-12(svn r8083) -Codechange: make a NetworkSocketHandler as base for all sockets ↵rubidium
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(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-05(svn r7888) -Change: add documentation about the 'on-the-wire' structure of ↵rubidium
the network game information request and reply packets.
2007-01-04(svn r7836) -Codechange: some constness for network/core.rubidium
2007-01-04(svn r7834) -Codechange: cleanup the includes of network/core a little; ↵rubidium
include headers in headers when the header needs types/constants defined in them.
2007-01-04(svn r7825) -Codechange: make NetworkUDPClose close a single UDP socket. Use ↵rubidium
NetworkUDPStop to close all opened udp sockets (those were called NetworkUDPClose).
2007-01-04(svn r7821) -Fix: be more strict about the socket from where packets arrive. ↵rubidium
Do not accept requests about the game server on the master/client socket, do not accept master server acks on the client/server socket, etc.
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.