aboutsummaryrefslogtreecommitdiffstats
path: root/code/qcommon/vm.c
diff options
context:
space:
mode:
authorthilo <thilo@edf5b092-35ff-0310-97b2-ce42778d08ea>2006-05-06 01:56:24 +0000
committerthilo <thilo@edf5b092-35ff-0310-97b2-ce42778d08ea>2006-05-06 01:56:24 +0000
commita679ae64e0a659e2b94ec97e688633bc1a0d041e (patch)
tree5d3fe1a56ea961fb5618cfda1fbd6d0072f44a4a /code/qcommon/vm.c
parent29ce2df227e4c556707ae482d4391c7eb700121d (diff)
downloadioquake3-aero-a679ae64e0a659e2b94ec97e688633bc1a0d041e.tar.gz
ioquake3-aero-a679ae64e0a659e2b94ec97e688633bc1a0d041e.zip
Add string length checking to function COM_StripExtension. This fixes the R_RemapShader buffer overflow exploit that can be found here:
http://milw0rm.com/exploits/1750 git-svn-id: svn://svn.icculus.org/quake3/trunk@765 edf5b092-35ff-0310-97b2-ce42778d08ea
Diffstat (limited to 'code/qcommon/vm.c')
-rw-r--r--code/qcommon/vm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/code/qcommon/vm.c b/code/qcommon/vm.c
index 0eb35c5..efc0da8 100644
--- a/code/qcommon/vm.c
+++ b/code/qcommon/vm.c
@@ -230,7 +230,7 @@ void VM_LoadSymbols( vm_t *vm ) {
return;
}
- COM_StripExtension( vm->name, name );
+ COM_StripExtension(vm->name, name, sizeof(name));
Com_sprintf( symbols, sizeof( symbols ), "vm/%s.map", name );
len = FS_ReadFile( symbols, (void **)&mapfile );
if ( !mapfile ) {