Commit graph

10051 commits

Author SHA1 Message Date
James R
0b5062d31c Set timeout on HMS connections
(cherry picked from commit fcbe4e668f1ac79811d1ab2fb9cfd44729e56e93)
2020-07-11 17:41:09 -07:00
James R
f32d91cc57 Resize response body buffer as needed
(cherry picked from commit 85fef2655cc78c9453aed423f5a1df6011ce3262)
2020-07-11 17:41:09 -07:00
James R
1ccca987cb Jart? What's that? 2020-05-15 12:57:31 -07:00
James R
2ec97b87a0 This is SRB2 2020-05-14 17:29:36 -07:00
James R
57c7df74d9 Rename hms123311.c to http-mserv.c
HMS lives on in our hearts!

(cherry picked from commit e8a2397deaacdd7dc6f80717755bc89161247cb5)
2020-05-14 17:28:55 -07:00
James R
fec8879797 Use Unlock_state here too
(cherry picked from commit a6ce21b450644a79b08b9533166704c7ef093816)
2020-05-14 17:28:55 -07:00
James R
0b9c20cc70 ok 2020-05-13 17:52:49 -07:00
James R
ae45333535 Revert "Use new two digit version number for HMS"
This reverts commit 7d2b3b0877.
2020-05-13 17:31:51 -07:00
James R
4b19a3321b Bind HMS connection with -bindaddr 2020-05-13 17:26:53 -07:00
James R
fb6572f080 Reset the masterserver address if the old one was set by the config 2020-05-13 17:26:34 -07:00
James R
35419cd77e Clarify where debug prints go when using masterserver_debug 2020-05-13 17:26:34 -07:00
James R
d91d7773be Use IPv4 for master server connections
Your server's address is gathered from the request, so it needs to be IPv4!
2020-05-13 17:26:34 -07:00
James R
7d2b3b0877 Use new two digit version number for HMS 2020-05-13 17:26:34 -07:00
James R
3e936a0878 Oops a debug condition snuck in there 2020-05-13 17:26:34 -07:00
James R
f9ec2a634c Fix switching the master server 2020-05-13 17:26:34 -07:00
James R
47bc3bff13 Put some mutex on CONS_Printf etc. hahaha 2020-05-13 17:26:34 -07:00
James R
ca8b3e95af Fucking multithreading in the server registration
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
2020-05-13 17:25:52 -07:00
James R
a80c7a26dd Wait for threads before SDL_Quit (lol) 2020-05-13 17:25:52 -07:00
James R
5fff4c35fc Create cond if it doesn't exist when signaling 2020-05-13 17:25:52 -07:00
James R
00ffb29f95 Use malloc for hms 2020-05-13 17:25:52 -07:00
Steel Titanium
ff8987f745 Support for http downloads
(cherry picked from commit 6fcc06bf72cf3b95c30f04919e807c7aaacec68d)

(cherry picked just the libcurl stuff)
2020-05-13 17:25:52 -07:00
James R
7ebde22b77 Make mod update, room list and server list multithreaded
This took fucking ages and it still fails sometimes in edge cases, but I
don't give a FUCK right now.
2020-05-13 17:24:27 -07:00
James R
886bd34be5 Multithreading in my SRB2??? 2020-05-13 17:21:19 -07:00
James R
1584b7394b WHY THE FUCK DID I DO THIS 2020-05-13 17:21:18 -07:00
James R
676865c1b9 Oops 2020-05-13 17:21:18 -07:00
James R
9216406eea Handle NULL hms buffer 2020-05-13 17:21:18 -07:00
James R
197cffb7f5 Compiler errors: won't stop, can't stop 2020-05-13 17:21:18 -07:00
James R
4fcd24d848 masterserver_update_rate cvar determines wait between updates in minutes
The new default is 15 minutes as well. And if you think that's too long, I have
confirmed that the Master Server delists inactive servers after a whopping 40
minutes, at least.
2020-05-13 17:20:59 -07:00
James R
bb8b279cd4 Don't try to update right after registering 2020-05-13 17:20:59 -07:00
James R
eac7b2e060 Add a hack so the 'All' room isn't display for hosting 2020-05-13 17:20:59 -07:00
James R
4fd707984b Kill the old mserv, long live HMS! 2020-05-13 17:20:59 -07:00
James R
1e4e5275b5 Clean up header text 2020-05-13 17:18:27 -07:00
James R
1f295b8e50 HTTP update alert 2020-05-13 17:18:27 -07:00
James R
1f04f8e0c0 Fix some goofs 2020-05-13 17:18:27 -07:00
James R
ec1d4c9a91 Bruh 2020-05-13 17:18:27 -07:00
James R
bcfbd5563b Clean up a bunch of stuff and follow the Master Server API more closely 2020-05-13 17:18:27 -07:00
James R
b15b90f217 Windows certs do work, thanks Steel! 2020-05-13 17:18:27 -07:00
James R
a4bbc06f25 Handle more errors 2020-05-13 17:18:27 -07:00
James R
f26ad18e28 Kill masterserver_token 2020-05-13 17:18:27 -07:00
James R
273e1ff170 This will be the Master Server in 2020 2020-05-13 17:18:27 -07:00
James R
bec97faf5c Use https because my web server redirects 2020-05-13 17:18:27 -07:00
James R
768ad80a97 strtok can return NULL 2020-05-13 17:18:27 -07:00
James R
9e0c1b3f1f This time I fucked up 2020-05-13 17:18:27 -07:00
James R
bec233515e Windows gaysed: the sequel 2020-05-13 17:18:27 -07:00
James R
acdced643c Windows is weird 2020-05-13 17:18:27 -07:00
James R
2cfb04f90b masterserver_debug to set CURLOPT_VERBOSE 2020-05-13 17:18:27 -07:00
James R
8228182823 Don't show "All" room when hosting 2020-05-13 17:18:27 -07:00
James R
06764dd88e I don't even know my own website 2020-05-13 17:18:26 -07:00
James R
83365e6ce0 lol 2020-05-13 17:18:26 -07:00
James R
06da1425b3 The big bad HTTP master server
Cvars:

http_masterserver is the url to the master server's API.
masterserver_token may be an authentication token.
2020-05-13 17:18:26 -07:00