sfan5
04810a094c
Improve lookup failure logging
2019-07-17 12:53:11 +02:00
sfan5
85c3048cd4
Fix handling of GeoIP lookup failure
2019-07-17 12:46:57 +02:00
Auke Kok
772fc29cb8
Detect geo of server.
...
Using geolite2, we attempt to detect the continent of the server
and store the 'continent code' in the serverlist. This is reasonably
broad enough to help players in the client find truly "nearby" server.
The client will have to be changed to select a continent to change
ordering or filtering.
2019-07-17 12:33:48 +02:00
sfan5
ac66259801
Less confusing status codes
2019-07-17 12:23:35 +02:00
sfan5
794807c9ff
Raise JSON length limit
...
it's not hard to hit 5000 if you just throw in a lot of mods
2019-05-07 17:30:15 +02:00
sfan5
6f51e2f00f
Tune server ranking (again)
2018-11-11 23:16:43 +01:00
sfan5
e7c4d2c20a
Tune server ranking
2018-10-27 22:46:12 +02:00
sfan5
57fb13cbb8
Use most compact JSON representation
2018-06-25 13:19:49 +02:00
sfan5
0a3d05baf5
Use portable os.replace instead of relying on POSIX behaviour
2018-06-25 12:48:23 +02:00
nOOb3167
a2b47ff52b
Document serverUp protocol
...
serverUp uses hex spaghetti to send and receive a short sequence of packets, to see whether a server is online.
The packet format is now annotated for easier cross-reference with minetest source.
2018-06-04 16:27:08 +02:00
nOOb3167
e49da8f1b9
Compatibility fix (string field conversion)
2018-05-18 10:09:36 +02:00
nOOb3167
48020105af
Schedule purging using plain python, obviating the need for APScheduler
2018-05-18 10:05:57 +02:00
nOOb3167
f43f201af5
Fix potential use-before-defined of serverList variable
2018-05-18 10:05:57 +02:00
nOOb3167
23d45c0a15
Improve use of os.path.join
2018-03-18 14:07:59 +01:00
nOOb3167
f5bddaaef5
Fix locking
...
Calls to save() in purgeOld() and update() were in race condition.
Race condition was eliminated by extending the lock scope within purgeOld().
Calls to load() were in race condition with themselves.
While current use of load() (called only during construction of class ServerList()) does not manifest the bug, any future change introducing concurrent use of load() would.
Race condition potential was eliminated by extending the lock scope within load().
2018-03-18 14:07:59 +01:00
nOOb3167
78abbee771
Fix server purging
2018-03-18 14:07:59 +01:00
sfan5
2f87286475
Make hostname blacklist case insensitive
2017-12-24 20:42:47 +01:00
sfan5
0d93321f6d
Restrict protocol of "server_url" values to HTTP(S)
2017-11-06 19:45:28 +01:00
sfan5
da9f297346
Refine "guest" name regex
...
Avoid detecting names such as "Bob123" (<4 chars) or "Angel060" (leading zero)
2017-08-08 23:30:35 +02:00
sfan5
828a1fda7e
Allow banning by server hostname
2017-05-14 15:29:46 +02:00
sfan5
705ea6e1a0
Re-add banlist features
...
This effectively reverts commit b3662901188fe1139603d5cf0874dcd4674a454f.
2017-05-14 15:03:05 +02:00
sfan5
5e12cb5022
Update detection of guest clients
2017-02-18 11:31:24 +01:00
ShadowNinja
58f03d0395
Try to fix list corruption issue
...
Sometimes the list was send in a corrupted form. This
appeared to be the result of overwriting the file as it
was being read by the server. This commit tries to fix
this by saving to a temporary file and then moving it over
the served file.
2016-02-04 16:49:25 -05:00
ShadowNinja
ea3dbeb889
Misc cleanup
2016-01-24 00:26:11 -05:00
ShadowNinja
ccd85da424
Remove list filename option
...
There's just not really a compelling reason for this to be configurable.
2016-01-24 00:25:58 -05:00
ShadowNinja
b366290118
Remove ban list
...
This should be handled at a higher level, such as in NetFilter or the proxy server.
I only added this feature because the old server list had it.
2016-01-23 23:53:01 -05:00
ShadowNinja
a431911b9d
Load defaults from example config
...
This makes some options non-optional -- allowing for a smaller config file.
This also removes the X-Sendfile example, bucause the proxy server should
handle static files directly and the option is not at all specific to this
particular application (and general Flask options aren't documented).
2016-01-23 23:47:15 -05:00
Ner'zhul
2fdd0daa11
Use ternary operator when possible
2015-07-18 16:31:12 +02:00
sfan5
c26c42baaa
Fix de-announcing
2015-06-08 23:05:30 +02:00
ShadowNinja
3976573369
Fix highly loaded server penalty
2015-04-15 16:20:21 -04:00
ShadowNinja
bbd62e8474
Tweak sorting algorithm
2015-04-10 12:13:50 -04:00
ShadowNinja
d4c55a332c
Add IPv6 support
2015-03-17 18:41:04 -04:00
est31
fb3b24dc77
Add protocol version server parameters
2015-02-17 16:20:41 +01:00
sfan5
ee2a6dee73
Refine sorting algorithm
2015-01-11 17:10:50 +01:00
ShadowNinja
2a5242eb68
Add scheduler timezone
2015-01-09 17:13:55 -05:00
ShadowNinja
3e59b9c8ca
Fix clients_max field name
2015-01-09 17:13:11 -05:00
ShadowNinja
f7a448123f
Attempt to improve server sorting
2015-01-09 16:48:03 -05:00
sfan5
c9c97b0ce5
Update to v3 of APScheduler
2014-12-23 19:42:45 +01:00
ShadowNinja
a3424b8035
Don't count things like DNS resolution in the ping
2014-11-20 17:26:49 -05:00
ShadowNinja
a835362de0
Fix locking of removeServer
2014-11-04 16:25:44 -05:00
sfan5
9df50135b6
Revert 757e186 "Disable source IP check because it causes problems"
...
minetest/minetest@8852333 fixed this
2014-09-19 19:40:23 +02:00
ShadowNinja
561cfb5427
Move server list management functions into a class
2014-09-14 15:29:51 -04:00
sfan5
757e186074
Disable source IP check because it causes problems (see minetest/minetest#1471 )
2014-07-12 17:26:16 +02:00
ShadowNinja
546a2be656
Fix some startup options being reset
2014-07-06 19:00:33 -04:00
sfan5
b6cae2f7c9
Add 'ALLOW_UPDATE_WITHOUT_OLD' config option
2014-07-03 19:01:18 +02:00
sfan5
794741fa1f
Fix conversion of string bools to bools
2014-07-03 19:01:18 +02:00
ShadowNinja
9a75f8e38e
Ensure request JSON contains an object
2014-07-02 22:16:04 -04:00
ShadowNinja
43211670ee
Fix port not being stringified on deletion
2014-07-01 19:53:15 -04:00
sfan5
5e605e4458
Move compatibility code for 'port' attr., fixes de-announce being broken
2014-07-01 21:06:36 +02:00
ShadowNinja
d4aeaabad2
Initial commit
2014-06-30 17:01:29 -04:00