Commit graph

43 commits

Author SHA1 Message Date
heinrich5991 1d81d56850 Introduce new, vanilla-compatible server info protocol
This means that we have a reliable and fast way to query for extended info,
while also not wasting network bandwidth.

The protocol is designed to be extensible, there's four bytes space for
encoding more request types (currently zeroed), and there's one string in each
response packet and one string for each player available (currently the empty
string).

The protocol itself has no problems with more than 64 players, although the
current client implementation will drop the player info after the 64th player,
because it uses a static array for storage.

Also fixes #130, the player list is just sorted each time new player info
arrives.
2017-03-29 12:56:13 +02:00
def 61e47422f6 Clean up debug messages a bit (lower case, no useless errors) 2016-05-02 21:35:32 +02:00
def 6e8ada1ac8 Fix whitespaces a bit 2015-07-09 02:12:35 +02:00
def a77cd039a6 Get rid of all Clang warnings 2015-04-18 22:29:28 +02:00
def bd62b5da79 Clean up a few compile warnings 2014-12-31 13:04:31 +01:00
def 3607218f12 Merge ddrace64 from eeeeee 2013-12-31 06:13:57 +01:00
oy 1a62770a56 fixed banning on the master server 2013-02-24 17:35:31 +01:00
oy 13d06e45ac fixed used nettype in server browser and try to use ipv4 and ipv6 socket when using a bindaddr. Closes #940 2013-02-24 17:26:59 +01:00
oy 4073520214 cleaned up content folder creation. Closes #845 2012-01-09 01:38:45 +01:00
oy 29738552a6 made bindaddr config work for client and master too. Closes #909 2012-01-06 19:17:14 +01:00
oy b44ee3d975 reworked ban system 2011-12-29 23:36:53 +01:00
oy fede33447a fixed problem with the master server 2011-04-15 20:38:06 +02:00
oy 06115dd49d added "Whitespace and line Endings cleanup" by GreYFoX 2011-04-13 20:37:12 +02:00
oy b6118ae9fe mapped IPv4 addresses within master servers server list to IPv6 to decrease the size of an entry and increased the servers per packet 2011-04-08 23:56:15 +02:00
m!nus 63c46b3e56 changed how server types are distinguished and fixed a few bugs 2011-04-02 17:39:12 +02:00
m!nus 3ebdc2a4ce added downward compatibility to mastersrv for 0.5 (and earlier) 2011-04-02 17:35:50 +02:00
oy 59d56cd332 finished IPv6 support (master servers aren't compatible with 0.5 and older). Closes #233 2011-03-30 12:08:33 +02:00
oy 0ae19e1339 removed support for old server infos 2011-03-04 18:14:08 +01:00
m!nus 3eb1c64428 Fixed ban adding in mastersrv (check for existing ban) 2011-01-23 17:54:32 +01:00
m!nus 05d274444a Add banning to mastersrv: any packet from a banned IP (and optionally a fixed port) will be dropped (also affects clients. Put your bans into master.cfg: "ban 127.0.0.1" or "ban 127.0.0.1:8303". It's reloaded every 5 minutes. This change also adds IStorage, IConsole and IKernel to mastersrv. 2011-01-23 17:54:27 +01:00
Sworddragon fc9211c777 Updated copyrights 2010-11-20 21:26:06 +01:00
Magnus Auvinen 72c06a2589 copied refactor to trunk 2010-05-29 07:25:38 +00:00
Magnus Auvinen 8acf5ed788 upgraded the master server code so it can handle more servers 2008-11-15 13:29:56 +00:00
Magnus Auvinen 7ebdb8d4d7 fixed logging 2008-10-01 18:34:43 +00:00
Magnus Auvinen 8d99a3d3c9 fixed so old request methods work aswell 2008-09-04 17:25:55 +00:00
Magnus Auvinen 53da3f0d40 added favorites. no saving of them yet however 2008-09-03 20:03:01 +00:00
Magnus Auvinen 62d9ff05d6 fixed connection less packets. they behave like the old version so version server and master servers still work 2008-08-31 19:29:09 +00:00
Magnus Auvinen 817f431377 moved out e_system, e_detect, vmath and math to a little base library 2008-08-14 17:19:13 +00:00
Magnus Auvinen 9d632dd826 major update. server clean up and much added documentation 2008-07-06 11:21:21 +00:00
Magnus Auvinen 34c3a1c142 new network code. not perfect. connectionless packets is missing so no server discovery is possible. reduced network traffic by A LOT 2008-04-05 14:50:43 +00:00
Magnus Auvinen 548a919ea3 merged 0.3.4 changes to trunk 2008-02-10 21:54:52 +00:00
Magnus Auvinen 438dfeb0ca fixed bug when switching fast from internet and lan tabs 2008-01-20 15:19:33 +00:00
Magnus Auvinen a2566b3ebd cleaned up code structure a bit 2007-12-15 10:24:49 +00:00
Magnus Auvinen 7703749cdf fixed bug in the masterserver when using alt_address 2007-12-13 21:05:14 +00:00
Magnus Auvinen 24b023a445 fixed the master server to it support alternative address 2007-12-13 20:08:08 +00:00
Magnus Auvinen bb48ddc34f fixed the master server to it support alternative address 2007-12-13 20:07:23 +00:00
Magnus Auvinen 0c9b4deadc changed masterserver port from 8383 to 8300 2007-12-03 20:58:46 +00:00
Magnus Auvinen a0e5181e42 added license info 2007-11-25 19:42:40 +00:00
Magnus Auvinen f9162202b0 fixed some C errors 2007-10-06 17:01:06 +00:00
Magnus Auvinen 8b3c16e615 major engine cleanup. dependency on baselib removed. engine is now C code (not ansi tho). some other cruft removed aswell 2007-08-22 07:52:33 +00:00
Magnus Auvinen 640b2bd953 made so that you can bind the server to a specific address 2007-08-05 14:19:13 +00:00
Magnus Auvinen 9ef96af054 fixed alot of masterserver fixes 2007-07-21 21:28:56 +00:00
Magnus Auvinen 9e4aea97bd lots of cool new features :D new master server 2007-07-21 18:07:27 +00:00