summaryrefslogtreecommitdiff
path: root/src/connection.cpp
Commit message (Collapse)AuthorAge
* [Patch 2/4] Network rework: packet writing, sending and cleanupsLoic Blot2015-02-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NetworkPacket.cpp: * Remove some deprecated functions, we must use streaming interface * m_data converted from u8* to std::vector<u8> * Add an exporter to forge packet to Connection object * implement operator << std::wstring. n * implement operator << std::string * dynamic resize when write packet content. * fix string writing and performances. * create ServerCommandFactory, used by client to get useful informations about packet processing (sending). * Reliability * Transmit channel * Implement putRawString for some ugly char (_INIT packet), and use it. * Many packet read and write migrated * Implement oldForgePacket to interface writing with current connection * fix U8/char/bool writing * fix string writing and performances. * add some missing functions * Use v3s16 read instead of reading x,y,z separately * Add irr::video::SColor support into packets * Add some missing handlers * Add a template function to increase offset * Throw a serialization error on packet reading (must be improved) PacketFactories: * Create ServerCommandFactory, used by client to get useful informations about packet processing (sending). * Create ClientCommandFactory, used by server to get useful informations about packet processing (sending). Client.cpp: * implement NetworkPacket ::Send interface. * Move packet handlers to a dedicated file * Remove Client::Send(SharedBuffer) Server.cpp: * implement NetworkPacket ::Send interface. * Rewrite all packets using NetworkPacket * Move packet handlers to a dedicated file * Remove Server::Send(SharedBuffer) ClientIface.cpp: * Remove sendToAll(SharedBuffer<u8>) Connection.hpp rework: * Remove duplicate include * Remove duplicate negation * Remove a useless variable * Improve code performance by using a m_peers_list instead of scanning m_peers map * Remove Connection::Send(SharedBuffer) * Fix useafterfree into NetworkPacket Sending * Remove unused Connection::sendToAll Test.cpp: * Remove dead code * Update tests to use NetworkPackets Misc: * add new wrappers to Send packets in client, using NetworkPacket * Add NetworkPacket methods for Connection * coding style fix * dead code since changes cleanup * Use v3s16 read instead of reading x,y,z separately in some packets * Use different files to handle packets received by client and server * Cleanup: Remove useless includes ok @Zeno- Tested by @Zeno- @VanessaE and @nerzhul on running servers
* Fix all warnings and remove -Wno-unused-but-set cflagkwolekr2015-01-18
|
* Performance fixes.onkrot2015-01-13
|
* Fix -Wtype-limits warnings and remove disabling of -Wtype-limitsCraig Robbins2014-12-29
|
* Fix MSVC compiler warning about passing this pointer in initializer listsapier2014-12-28
|
* Use std::string::empty() instead of size() where applicableAnton2014-12-12
|
* Fix #1733: An unhandled exception occurred: GetPeer: Peer not found ↵Craig Robbins2014-10-28
| | | | (possible timeout)
* Log unhandled exceptions in connectionthreads to errorstreamsapier2014-09-06
|
* Fix access to invalid data on reception of packet with size 0sapier2014-09-06
|
* Improve timeout calculationsapier2014-08-22
| | | | gf
* Fix errors/warnings reported by valgrindsfan52014-07-06
|
* Add prefixes to enum values and fix style issueskwolekr2014-06-28
|
* Changed Time Out message from ERROR to INFO.Megaf2014-06-12
| | | | Changed Time Out message from ERROR to INFO.
* Fix numeric underflow on calculating window size adjustmentsapier2014-05-04
|
* Add download rate to media progress bar (non http mode only!)sapier2014-04-29
| | | | Minor coding style fixes
* Reduce log level for incoming crap packetssapier2014-04-19
| | | | Add log entry for peer timeout
* Bunch of small fixes (coding style, very unlikely errors, warning messages)sapier2014-04-19
|
* Fix all warnings reported by clangSfan52014-04-15
|
* Add support for named threads (atm linux only)sapier2014-04-09
|
* Cleanup client init states by bumping protocol versionsapier2014-04-08
| | | | | | | | | | Don't use TOSERVER_RECEIVED_MEDIA but TOSERVER_CLIENT_READY as indicatio for client ready Handle clients with protocol version < 23 (almost) same way as before Make client tell server about it's version Add client state to not send bogus player position updates prior init complete Add access to statistics information (peer connction time,rtt,version) Fix clients standing stalled in world while preloading item visuals (new clients only) Add get_player_information to read client specific information from lua
* Pass arguments by referenceSelat2014-03-12
|
* Add the option to bind to a specific addressShadowNinja2014-02-05
|
* Add propper client initializationsapier2014-01-31
| | | | | | | | | | | | | -add client states to avoid server sending data to uninitialized clients -don't show uninitialized clients to other players -propper client disconnect handling Minor comment fixes in server Minor bugfixes in connection -improved peer id calculation -honor NDEBUG flag -improved disconnect handling -increased initial send window Remove some dead code
* Fix bug only half of unreliable queue handled per step in worst casesapier2014-01-26
|
* Connection: Stop processing malformed packet when encounteredkwolekr2014-01-21
|
* Fixed minetest reliable udp implementation (compatible to old clients)sapier2014-01-10
|
* Make MutexQueue use jsemaphore for signalingsapier2014-01-10
|
* Replace SimpleThread by JThread now implementing same featuressapier2013-12-15
|
* Fix server getting completely choked up on even a little of DoSPerttu Ahola2013-08-04
| | | | | | * If client count is unbearable, immediately delete denied clients * Re-prioritize the checking order of things about incoming clients * Remove a huge CPU-wasting exception in ReliablePacketBuffer
* Throw exception instead of assert on nested reliable packetsKahrl2013-07-04
| | | | Fixes a denial of service vulnerability, issue #784
* Add support for IPv6proller2013-06-23
| | | | | | | Two new configuration options are added: - "enable_ipv6" to enable/disable the overall use of IPv6 - "ipv6_server" to enable/disable the use of IPv6 sockets when running a server (when "enable_ipv6" is enabled)
* Migrate to STL containers/algorithms.Ilya Zhuravlev2013-03-11
|
* Update Copyright YearsSfan52013-02-24
|
* Change Minetest-c55 to MinetestPilzAdam2013-02-24
|
* Add congestion control settings to minetest.confPerttu Ahola2012-11-29
|
* Properly and efficiently use split utility headersPerttu Ahola2012-06-17
|
* Switch the license to be LGPLv2/later, with small parts still remaining as ↵Perttu Ahola2012-06-05
| | | | GPLv2/later, by agreement of major contributors
* Remove misdesigned exception from ReliablePacketBufferPerttu Ahola2012-06-04
|
* Attempt to fix some minor memory leaksPerttu Ahola2012-03-20
|
* Attempt to fix build for MSVCPerttu Ahola2012-03-18
|
* Proper handling of failing to bind server socketPerttu Ahola2012-03-11
|
* Increase Peer max_packets_per_second (hopefully doesn't break anything)Perttu Ahola2012-03-11
|
* The huge item definition and item namespace unification patch (itemdef), see ↵Kahrl2012-01-12
| | | | http://c55.me/minetest/wiki/doku.php?id=changes:itemdef
* Make Connection::Receive return the data via a SharedBuffer reference, so ↵Kahrl2011-11-07
| | | | | | | | the caller doesn't have to choose the right buffer size in advance. Conflicts: src/test.cpp
* Attempt a workaround to the network layer segfaultPerttu Ahola2011-10-30
|
* Make it to compile on MSVC2010Perttu Ahola2011-10-21
|
* Some tuning in m_max_packets_per_second algorithmPerttu Ahola2011-10-21
|
* Improve Connection with threading and some kind of congestion controlPerttu Ahola2011-10-20
|
* Better handling of SendFailedException in ConnectionPerttu Ahola2011-10-18
|
* Catch SendFailedException when replying back in Connection::Receive()Perttu Ahola2011-10-17
|