This unofficial patch for Call of Duty 2 is a work-around for the following
problem:
.
- Attempted to overrun string in call to va()
.................................................. ..............................
. this problem happens when the game tries to build a string longer than 1024
. chars using va(), the function which calls snprintf and returns a pointer to
. its static buffer.
. Seems that this problem is caused by too much map names which overflow the
. info string containing the names and crc of the game maps, but it could be
. also exploited by some attackers (no proof-of-concept known at the moment).
. The reason of the limiting of the buffer size from the old 32000 bytes to only
. 1024 is a mistery which nobody knows...
. The solution I have adopted for stopping this bug is just the skipping of the
. Com_Error call which shutdowns the server and the setting of len to zero.
. This is the best choice versus attacks that exploit this bug but I don't know
. if this solution is good for the maps problem too, admins refer to this
. problem as map rotation or sum mismatch bug too:
.
http://www.iwnation.com/Forums/index...howtopic=24161
.
This legacy patch works only with version 1.0 for Linux