Commit graph

471 commits

Author SHA1 Message Date
Thilo Schulz
a7ea395bd0 Add opStack protection to defend against malicious QVMs 2011-05-10 09:14:49 +00:00
Thilo Schulz
5f63ab9160 Choose better alignment for heavy-duty rendering structures, patch by Matt Turner (#4981) 2011-05-09 23:39:40 +00:00
Thilo Schulz
36314a1622 Add error handling to malloc as well 2011-05-09 15:40:30 +00:00
Thilo Schulz
876fd7dcb9 - Add HOMEPATH default name define to q_shared.c, patch by uZu (#4973)
- Reverted change from (#4972) and implemented the other suggestion to be consistent with cl_cgame.c and cl_ui.c
2011-05-04 15:39:35 +00:00
Thilo Schulz
d34c6b7e0b Revert protocol 69 pending further discussion (#4962) 2011-04-27 20:17:45 +00:00
Thilo Schulz
a5580d8974 - Harden the client and server protocol against UDP spoofing attacks. This will defend ioquake3 against http://aluigi.altervista.org/papers/q3noclient.txt (#3041)
- Retains full compatibility to the old but unsecure protocol between clients and servers
- Harden the connection process against DoS attacks, possibly connected to UDP spoofing
2011-04-27 16:03:35 +00:00
Thilo Schulz
a0582fb21a Fix a little quirk still 2011-04-26 02:32:05 +00:00
Thilo Schulz
797d127dfc Use memcmp instead of self-built while loop 2011-04-26 02:30:12 +00:00
Thilo Schulz
6a203bc8e9 - Fix data alignment issue with glReadPixel call, reported by Guillaume Bougard (#4954)
- Fix data alignment issue in raw AVI recording for weird resolutions (like 1366x768)
2011-04-18 16:06:10 +00:00
Tim Angus
52ead6fa36 * Crash recovery for com_pipeFile (Lakitu7) 2011-03-30 21:58:31 +00:00
Ludwig Nussel
1b27ae23c1 include vm_local.h in vm_powerpc_asm.c
Patch by Simon McVittie, bug 4930
2011-03-13 16:54:41 +00:00
Thilo Schulz
641256f7f0 strtod exists in bg_lib.c now so Q_isanumber will work in the VMs, too. 2011-03-11 13:51:36 +00:00
Tim Angus
a9830934ba * Fix misplaced ; in MSVC _vsnprintf wrapper 2011-03-10 22:06:55 +00:00
Thilo Schulz
3bf8ec2dab (#4925) - com_pipefile to create a named pipe for sending commands from other processes, patch by Chris Schwarz 2011-03-10 01:01:27 +00:00
Thilo Schulz
e5cec15fbf Fix bug where Com_StartupVariable would set CVAR_USER_CREATED on already existing cvars 2011-03-09 22:50:06 +00:00
Thilo Schulz
8c3f320504 (#3767) Some protection from malicious qvms - patches and ideas by Amanieu d'Antras and Ben Millwood 2011-03-08 01:39:34 +00:00
Thilo Schulz
c0cca7a0a8 - Fix potential out-of-bounds read in files.c, fix by using new FS_IsExt
- Add capability to load demos with com_protocol suffix, partially applied patches from Simon McVittie
- Fix demo loading if protocol number has more digits than 2
- Minor refactoring, replace all occurances of suffix "dm_" with global macro DEMOEXT
2011-03-07 22:08:48 +00:00
Thilo Schulz
fef4d12d68 Refactoring patch by DevHC 2011-03-05 19:20:37 +00:00
Thilo Schulz
21668c0616 Fix systeminfo command, fix by DevHC 2011-03-05 19:11:56 +00:00
Thilo Schulz
0387b8002e Add cvar "protocol" so user can change protocol version on command line, for standalone games. Most of the patch by Simon McVittie with a few minor modifications by myself 2011-03-05 19:10:23 +00:00
Thilo Schulz
3639108763 Also send empty valued system cvars, fix proposed by DevHC 2011-03-05 19:07:56 +00:00
Thilo Schulz
34e0a6c6f6 Make NET_Sleep wait 1ms less than requested, then busy-wait the last ms for better timeout precision. 2011-02-23 18:09:17 +00:00
Thilo Schulz
ccd24cd647 - Fix unterminated string errors in Q_vsnprintf() on windows. Thanks to Eugene C. for reporting (#4907)
- Get rid of bigbuffer in Com_sprintf()
- Get rid of Q_snprintf and replace with Com_sprintf()
2011-02-23 16:17:09 +00:00
Thilo Schulz
4dc750aedb Merge "which" command upstream from Tremulous, patch provided by Chris Schwarz 2011-02-10 23:07:07 +00:00
Thilo Schulz
614f315ce8 Fix console tab autocomplete for exec and condump on pure servers, patch by Zack Middleton 2011-02-10 19:58:20 +00:00
Thilo Schulz
e05c9ad1c2 - Make some string functions in g_cmds.c cleaner, by DevHC
- embed VM_FREEBUFFERS() macro in do-while-loop
2011-02-10 18:56:18 +00:00
Thilo Schulz
544a1c0c1a - Use MAP_FAILED error code for check whether mmap() was successful
- Replace various malloc() with Z_Malloc
- Fix several memory leaks when VM compilation failed and Com_Error is called
- Make failed mmap/VirtualAlloc/malloc calls fatal
2011-02-10 18:45:28 +00:00
Zachary Slater
5e0d0efd2e http://www.angryflower.com/aposter.html
(minor English issues, most of which are via /dev/humancontroller)
2011-02-09 05:51:33 +00:00
Thilo Schulz
3b40467599 Finally fix missionpack compiling for STANDALONE=1, yes, this is tested. 2011-02-09 00:42:54 +00:00
Thilo Schulz
956c9a262a First batch of getting replacing malloc() with Z_Malloc 2011-02-09 00:02:42 +00:00
Thilo Schulz
eb11388cac Fix STANDALONE in files.c 2011-02-08 20:27:49 +00:00
Thilo Schulz
2d2bdea553 Cleanup STANDALONE 2011-02-08 19:51:43 +00:00
Thilo Schulz
2b52867b74 Code cleanup patch by devhc 2011-02-08 18:19:31 +00:00
Thilo Schulz
48b03a035b Ok, getifaddrs() is not POSIX compliant. Fix #3984 as suggested by Vincent Cojot 2011-02-07 05:20:31 +00:00
Thilo Schulz
1d2d67cdde strdup still not accepted by some systems. *sigh*. 2011-02-07 03:56:15 +00:00
Thilo Schulz
0e6427f3ff - Hopefully fix (#3984) compiler errors on Solaris while not introducing too many new ones on the other platforms
- With _BSD_SOURCE now explicitly defined bring back strdup to vm_x86_64_assembler.c
2011-02-06 20:26:18 +00:00
Thilo Schulz
7bb5906599 Patch by Simon McVittie to improve dynamic library loading (#4700) 2011-02-04 17:47:57 +00:00
Thilo Schulz
d2f8b9f4bb Support GNU/kFreeBSD, patch by Cyril Brulebois. Thanks. 2011-02-04 17:31:12 +00:00
Thilo Schulz
e66abb3237 - Add support for linearly desaturating images via r_greyscale
- Use correct luminance values for rendering textures
Patch submitted by Forrest Voight.
2011-02-04 16:04:37 +00:00
Thilo Schulz
2cddb3e0ea https://bugzilla.icculus.org/show_bug.cgi?id=4460 2011-02-04 13:43:41 +00:00
Thilo Schulz
67a8b273c2 - Add cvars cl_gamename, sv_heartbeat, sv_flatline so standalone games can customise their messages to the master server 2011-02-04 13:25:51 +00:00
Thilo Schulz
0eb5d1720c Fix banfile writing to wrong game directory 2011-02-04 12:34:11 +00:00
Thilo Schulz
3148416c04 - Change runtime standalone detection:
* com_standalone now read-only
  * add new cvars com_basegame, com_homepath
  * standalone now automatically detected when com_basegame is set to something different than baseq3 and no id pak pk3s are found
  * This fixes https://bugzilla.icculus.org/show_bug.cgi?id=4699
- Replace a few hardcoded string literals with macros
- Add checks for Team Arena PK3s to FS_CheckPak0()
2011-02-04 12:04:56 +00:00
Thilo Schulz
cf791d14c5 - Fix bug #4769 remote server crash
- Fix potential 1-byte-buffer overflow in gamecode
2011-02-03 02:54:36 +00:00
Thilo Schulz
16c83ae2c5 Server crash can cause recursive call to Com_Error, too 2011-02-02 23:57:22 +00:00
Thilo Schulz
4982bf8e6b r1833 now made some Linux systems spit out warnings. Fix this once and for all 2011-02-02 16:49:52 +00:00
Thilo Schulz
e5dbce839a - Use select() to sleep when idle as opposed to busy waiting.
- Introduce com_busyWait cvar to go back to old behaviour
2011-02-02 16:46:23 +00:00
Thilo Schulz
0baadba7d1 Windows doesn't know z in format string 2011-01-31 21:13:37 +00:00
Thilo Schulz
0c662f25f2 Make Ludwig happy 2011-01-27 16:41:08 +00:00
Thilo Schulz
d1c0401c73 well, shit. 2011-01-27 12:34:58 +00:00
Thilo Schulz
92495a70bc Fix compiler warnings (#4887) 2011-01-27 11:13:39 +00:00
Thilo Schulz
74be070642 Make sure com_developer global var gets written right after developer has been read from cmd line 2011-01-25 16:18:49 +00:00
Thilo Schulz
5c0ae99642 Make number of supported master servers tunable via define 2011-01-25 02:04:25 +00:00
Thilo Schulz
bf07014b1d Make this change so standalone developers will know to change the HEARTBEAT game string for their versions, too. 2011-01-24 18:09:20 +00:00
Thilo Schulz
6179036ac9 Fix name resolution for domains with A and AAAA record 2011-01-24 01:55:12 +00:00
Thilo Schulz
8243a77c0e Revert changes because dpmaster doesn't work that way. 2011-01-24 01:24:07 +00:00
Thilo Schulz
7861cde4a2 Make it use the correct game name in getserversExt queries 2011-01-24 00:21:33 +00:00
Tim Angus
c314f29290 * Use correct compiler defines for OS detection on Windows 2010-12-19 16:34:35 +00:00
Ludwig Nussel
c51d99117c use mmap on freebsd too 2010-11-22 07:12:35 +00:00
Thilo Schulz
83a3e2ae1b First batch of bug fixes reported and patched by Zack "ZTurtleMan" Middleton:
#4736
#4730
#4731
#4732
#4733
#4735
#4736
#4737
#4738
#4739
2010-08-29 17:32:54 +00:00
Thilo Schulz
3ff2666375 Fix buffer overflow, report and patch by Eugene C. (#4669) 2010-07-02 20:21:20 +00:00
Ludwig Nussel
233fcb0caa fix stack alignment dynamically for OP_BLOCK_COPY 2010-06-02 14:46:16 +00:00
Ludwig Nussel
2950bb98ea fix OP_BLOCK_COPY alignment for win64 (patch by Marcus Meissner) 2010-05-17 08:59:53 +00:00
Ludwig Nussel
760f4a1949 64bit Windows support (patch by Michael Menegakis) 2010-02-28 09:00:02 +00:00
Ludwig Nussel
a9fdf0ef3b need to hardcode "baseq3" to prevent download of id files even if compiled STANDALONE 2010-02-28 08:56:54 +00:00
Tim Angus
3ebe048968 * Fix a memory leak in OS X Sys_Dialog
* Fix compilation on Snow Leopard
2010-02-26 16:32:49 +00:00
Tim Angus
005f870ebe * Sys_Dialog for more user friendly error reporting
* (bug #3932) Recovery from bad video settings
2010-02-15 16:20:33 +00:00
Ludwig Nussel
4876413217 __WORDSIZE is not available on non-GNU systems (Dominic Fandrey) 2010-01-16 10:55:51 +00:00
Tim Angus
9018fedd16 * Clean-up whitespace in net_ip.c 2010-01-10 18:28:32 +00:00
Tim Angus
240b25a41f * (bug #4271) FreeBSD fixes (Dominic Fandrey) 2010-01-07 19:53:52 +00:00
Tim Angus
e7f9b8d193 * That probably deserves a Com_DPrintf as well 2010-01-03 22:07:20 +00:00
Tim Angus
bb30f51f67 * (bug #4357) CVAR_ROM+CVAR_ARCHIVE is not read from q3config 2010-01-03 19:44:37 +00:00
Tim Angus
78df7a1de4 * (bug #4346) Dedicated server uses 100% CPU when stdin is not a TTY
* com_speeds reports misleading values on dedicated server (Guillaume Bougard)
2009-12-24 00:40:39 +00:00
Tim Angus
fa2a698aa3 * (bug #4369) Cvar modified flags are not updated in Cvar_Get (Lakitu7) 2009-12-18 21:57:56 +00:00
Thilo Schulz
10cdcdb0a1 Forgot this one 2009-11-14 01:59:01 +00:00
Thilo Schulz
258429efe7 - Add unset command for cvars created by the user
- Fix crash bug when maximum number of cvars has been reached
- Fix cvar_restart
- Add possibility to cleanly switch mods ingame (#2819)
2009-11-09 22:41:42 +00:00
Thilo Schulz
606ce66726 This is true always, anyways. 2009-11-09 13:50:48 +00:00
Thilo Schulz
5785b45e6a Shut up warn_unused_result warning 2009-11-08 17:00:27 +00:00
Tim Angus
108705d31f * Rewrite win32 Sys_Mkdir to use CreateDirectory
* Make FS_ReplaceSeparators filter out runs of multiple separators
* Make FS_CreatePath skip creation of the root directory
2009-11-07 16:43:02 +00:00
Tim Angus
0f9a5e09eb * Improve displayed error message when pak?.pk3 is missing 2009-11-06 16:25:14 +00:00
Thilo Schulz
4ba2452f83 Use new Sys_SetEnv here 2009-11-06 10:50:16 +00:00
Tim Angus
eee9770fbf * Reimplement r1597-1598 in a better way (Oopss)
* Fix Sys_SetEnv warning
2009-11-05 20:20:23 +00:00
Thilo Schulz
621f91783c Different default values for multicast-scope on Windows and non-Windows OS 2009-11-04 00:42:22 +00:00
Ludwig Nussel
3d7d2d9f5b check all jumps (#4249) 2009-11-01 19:58:27 +00:00
Ludwig Nussel
12189381b5 fix cmp imm reg 2009-11-01 19:58:25 +00:00
Ludwig Nussel
da31866f6d report memory violations in debug mode 2009-11-01 19:58:21 +00:00
Ludwig Nussel
4722d311fd better range checks 2009-11-01 19:58:18 +00:00
Ludwig Nussel
b7eae0dca5 implement immediate argument for call 2009-11-01 19:58:16 +00:00
Ludwig Nussel
ed98f65d10 optimize const before jump 2009-11-01 19:58:12 +00:00
Ludwig Nussel
a7dee44def check const jump argument 2009-11-01 19:58:09 +00:00
Ludwig Nussel
469c986640 more security checks in interpreter (#4249) 2009-11-01 19:58:07 +00:00
Ludwig Nussel
cc9a74a218 Define stack sizes at central place
also reverts bug 4282 as stack is included in bss already so nothing that needs fixing
2009-11-01 19:58:03 +00:00
Ludwig Nussel
2fecf6d6bc get rid of gas remains 2009-10-26 21:59:03 +00:00
Tim Angus
f9c4003186 * Make [sv|cl]_packetdelay work when timescale is not 1 (arQon) 2009-10-25 21:54:45 +00:00
Ludwig Nussel
2fc4023e0b fix zlib includes 2009-10-24 14:19:39 +00:00
Thilo Schulz
c05d9c9f0c Fix uninitialized words in VM interpreter, reported by Patrick Baggett (4281) 2009-10-23 03:02:08 +00:00
Tim Angus
c8583df572 * D'oh, vm_ppc.c isn't used any more 2009-10-20 11:47:34 +00:00
Tim Angus
d47509b861 * Sort out the white space disaster in vm_ppc.c 2009-10-20 11:44:25 +00:00
Tim Angus
60ed7a4cc4 * (bug #4249) Fix similar overflow in PPC VM (untested) 2009-10-20 11:36:45 +00:00
Tim Angus
5663ff1362 * (bug #4249) Fix buffer overflow in x86 VM 2009-10-19 23:01:00 +00:00