summaryrefslogtreecommitdiff
path: root/src/server/sv_main.c
AgeCommit message (Collapse)Author
2017-04-17moar shit/dev/humancontroller
TODO (for me): rebase this shit
2017-04-06decrap/dev/humancontroller
2017-04-06implement sv_schachtmeisterPort; add compat shit for crapware from the future/dev/humancontroller
2017-04-06implement Schachtmeister v2 basics/dev/humancontroller
2017-03-11tell funny version information in status responses (and configstrings)/dev/humancontroller
2017-03-09implement part 1 of the multi-protocol functionality: protocols/dev/humancontroller
this contains support for connecting via, and serving simultaneously via, any of the three protocols: latest, GPP and 1.1 alternate-1 means protocol 70 (GPP), alternate-2 means protocol 69 (1.1) relevant cvars: - net_alternateProtocols - net_alt{1|2}port[6] - sv_alt{1|2}master{1|...|5} - sv_clAltProto{0|..|63}
2017-03-09stop using PERS_SCORE from the server component/dev/humancontroller
because score is a game-specific thing also, this prevents (Aasimar's hack) the use of server status queries to determine who is spectating whom
2017-03-09do not publish gamestats/dev/humancontroller
TODO: remove the remnants
2017-02-08add missing trailing '\n's from strings to execute; add double quotes around ↵/dev/humancontroller
substituted argument strings also transform trailing ';'s to '\n's
2017-02-08protect the server against division by 0 in case of certain client rate and ↵/dev/humancontroller
server timescale settings
2016-04-07Use Opus for VoIPZack Middleton
Server/client VoIP protocol is handled by adding new cvars cl_voipProtocol and sv_voipProtocol, sv_voip and cl_voip are used to auto set/clear them. All users need to touch are cl/sv_voip as 0 or 1 just like before. Old Speex VoIP packets in demos are skipped. New VoIP packets are skipped in demos if sv_voipProtocol doesn't match cl_voipProtocol. Notable difference between usage of speex and opus codecs, when using Speex client would be sent 80ms at a time. Using Opus, 60ms is sent at a time. This was changed because the Opus codec supports encoding up to 60ms at a time. (Simpler to send only one codec frame in a packet.)
2015-03-17Fix case where interval overflows (thanks jackeri)Tim Angus
[17:58] <Jacker> hey, you might be interested in checking out this https://github.com/etlegacy/etlegacy/commit/4da5a397b5994bfe5fddb9dad35bef5ddbea64c9#diff-acaedc9d8b492f9af8966ae68597392cR615 [17:58] <Jacker> its related to the ddos protection code you wrote [17:59] <Jacker> in continuation to: ab9b08e5845b0ff19814c996ad0cfb1dccab2790 [17:59] <Jacker> in a case if the client has in the past connected to the server days/weeks earlier and time wraps the client wont be able to connect [18:00] <Jacker> since in that case if the bucket of that clients ip still exists it wont get checked correctly
2014-06-17Rate limit getchallengeTim Angus
2013-02-16Update copyright noticesTim Angus
2013-01-12Add length check here as well, thanks EnsiformThilo Schulz
2013-01-12prevent using getinfo as an amplifier for DDOS attacks (#5678). Patch by DevHCThilo Schulz
2013-01-12fix some typosZack Middleton
From /dev/humancontroller.
2013-01-10- Switch master server protocol to dpmaster for better game separation. ↵Thilo Schulz
Based partly on patch by Zack Middleton - Get rid of ugly cvars sv_heartbeat and cl_gamename and replace with single com_gamename - Remove sv_flatline. Flatlines are ignored by dpmaster and are considered to be insecure because flatlines can be udp-spoofed.
2013-01-10Move rate limiting / queued packet sending logic from Com_Frame() to sv_main.cThilo Schulz
2013-01-10- Improve snapshot rate and data rate control - Make server send packet ↵Thilo Schulz
fragments and queued packets when server is idle - Voip protocol detection is tied to com_protocol making past-end-of-message reading unncessary - Use Hunk_AllocateTempMemory() for buffering VOIP packets and fix buffering scheme that ryan hates so much - Disable packet scrambling for new protocol as it is useless now - Get rid of the old packet scrambling functions predating latest point release - Use Hunk_AllocateTempMemory() for netchan packet queue to fix memory leak when client gets disconnected with packets in the queue - Use Hunk_AllocateTempMemory() for download blocks to fix memory leak when client gets disconnected with download blocks in the queue - Fix SV_RateMsec to account for udp/udp6 packet lengths
2013-01-10- Implement dual protocol support (#4962) - Fix several UDP spoofing ↵Thilo Schulz
security issues
2013-01-03* Merge ioq3-r1946Tim Angus
2013-01-03* Merge ioq3-r1813Tim Angus
2013-01-03* Merge ioq3-r1765Tim Angus
2013-01-03* Update copyright noticesTim Angus
2013-01-03* Remove sv_www* cvars, which were in mgdev for 1.1 client compatibility and ↵Christopher Schwarz
shouldn't be in trunk
2013-01-03* Merge ioq3-r1637Tim Angus
2013-01-03* Convert master address resolution to IPv6-compatible APIBen Millwood
* MOTD parsing should use the whole string rather than just arg1
2013-01-03* Merge ioq3-r1498, by popular demandTim Angus
2013-01-03* Merge ioq3-r1423Tim Angus
+ IPv6 + VoIP + Stereo rendering + Other minor stuff
2013-01-03Added armour files to version control.Michael Levin
2007-09-15* Merge of ioq3-r1183Tim Angus
+ Windows dedicated console + MSVC project + Makefile tweaks
2007-09-05* Merge of ioq3-r1163Tim Angus
+ SDL everywhere + New R_LoadImage + net_ip.c + Window icon + GUI based dedicated server support + Compile time linked OpenGL * Remove ui_menuFiles cvar
2007-08-13* sv_masterX cvars were being cleared by the server whenever a DNS lookupTony J. White
failed on the cvar value. This behaviour went unnoticed in Q3 since lookups were typically only done when the server started or sv_masterX cvars were manually changed. Now that Tremulous does fresh DNS lookups after every map change, any network hiccup could clear out the sv_masterX settings. This cvar clearing is now removed. * removes a duplicate line setting sv_master[ X ]->modified.
2007-07-15* Merge of ioq3-r1112Tim Angus
2006-11-28* Merge ioq3-989Tim Angus
2006-06-17* Merged ioq3-r810Tim Angus
2006-05-16* Removal of bot codeTim Angus
* Refactored botlib parsing code into qcommon
2006-05-06* Merged ioq3-r775Tim Angus
- SDL_GammaRamp stuff - Anisotropic texture filtering - q3testesque r_flares - cl_guid - Security fixes
2006-04-16* Merged ioq3-r708Tim Angus
2006-04-16* Removed server command queueing -- that was a silly ideaTim Angus
2006-04-09* Removed CS_SCORE? config strings -- they were unusedTim Angus
* Moved server command queuing from game to server -- sv_dequeuePeriod probably needs to be lowered * Added g_friendlyBuildableFire to enable friendly buildable fire
2006-02-28* Merged ioq3-r594Tim Angus
- OpenAL fixes - SV_Shutdown message fixes
2006-02-24* Merged ioq3-r584Tim Angus
2006-01-26* Removed sv_floodProtect, the functionality is in the game moduleTim Angus
2006-01-20* Master server now logs version and renderer stringsTim Angus
* Master server now responsible for logging game statistics
2005-12-28* Added master server to source, based on dpmasterTim Angus
* Removed gametype, fraglimit and dmflags cvars * Removed CD key authentication stuff * Implemented a means to save and restore cmd context * Bumped protocol version up to 69 (same as 68) * Removed various references to punkbuster * Maps on create server menu now sorted by name * Fixed some warnings
2005-12-23* Crudely removed CD key authenticationTim Angus
* Changed defaults for r_picmip and r_textureMode * Changed internal alien weapon names * Removed playback of the intro movie * Fixed painblend reset bug * Added multiple chat sounds * Player splash wake now uses mark system
2005-12-10* s/Quake III Arena source code/Tremulous/Tim Angus
* De-quaked various bits and pieces * Integrated Tremulous into the ioq3 source * Relicensed Tremulous to be GPL * It compiles!!!!!!!!11111111!!!!1
2005-12-10* Copied ioq3 src to trunkTim Angus