freetype2/include/freetype/internal
David Turner 264f307e66 * include/freetype/fterrdef.h, include/freetype/config/ftconfig.h,
include/freetype/internal/ftmemory.h, src/base/ftdbgmem.c,
    src/base/ftutil.c: udpating the memory management functions and
    macros to safely deal with array size buffer overflows, this
    corresponds to attemps to allocate arrays that are too large. For
    an example, consider the following code:

         count = read_uint32_from_file();
         array = malloc( sizeof(Item) * count );
         for ( nn = 0; nn < count; nn++ )
           array[nn] = read_item_from_file();

    if 'count' is larger than FT_UINT_MAX/sizeof(Item), the multiplication
    will overflow and the array allocated will be smaller than the data
    read from the file. In this case, the heap will be trashed, and this
    can be used as a denial-of-service, or make the engine crash later.

    the FT_ARRAY_NEW and FT_ARRAY_RENEW macro now check that the new
    count is no more than FT_INT_MAX/item_size, otherwise, a new error,
    named 'FT_Err_Array_Too_Large' will be returned.

    note that the memory debugger now works again when FT_DEBUG_MEMORY
    is defined, and FT_STRICT_ALIASING has disappeared, the corresponding
    code being now the default.
2006-05-02 06:34:27 +00:00
..
services Formatting, copyright years. 2006-02-25 16:52:16 +00:00
autohint.h updating sources to support the new FT_LOAD_TARGET_ constants 2002-08-27 22:34:20 +00:00
ftcalc.h Formatting, copyright years, documentation improvements. 2006-02-17 08:07:09 +00:00
ftdebug.h Normalize quotation to `...'. 2006-03-24 12:46:49 +00:00
ftdriver.h Normalize quotation to `...'. 2006-03-24 12:46:49 +00:00
ftgloadr.h * docs/CHANGES: Updated. 2006-03-24 11:54:53 +00:00
ftmemory.h * include/freetype/fterrdef.h, include/freetype/config/ftconfig.h, 2006-05-02 06:34:27 +00:00
ftobjs.h * builds/amiga/src/base/ftsystem.c, devel/ftoption.h 2006-02-16 22:45:31 +00:00
ftrfork.h Formatting, copyright years, documentation improvements. 2006-02-17 08:07:09 +00:00
ftserv.h Clean-ups, copyright years, formatting. 2006-02-22 08:23:35 +00:00
ftstream.h * src/base/ftcalc.c (FT_MulTo64): Commented out. 2005-11-17 01:53:07 +00:00
fttrace.h * include/freetype/ftoutln.h (FT_Outline_Embolden): Mention in 2006-02-15 06:05:52 +00:00
ftvalid.h Adding OpenType validation module. The code is based on the 2004-09-10 14:39:00 +00:00
internal.h * include/freetype/internal/ftobjs.h: Don't include 2004-09-06 07:06:56 +00:00
pcftypes.h Cleanups. 2003-04-22 07:49:24 +00:00
psaux.h Formatting, copyright years, documentation improvements. 2006-02-17 08:07:09 +00:00
pshints.h Normalize quotation to `...'. 2006-03-24 12:46:49 +00:00
sfnt.h formatting, doc improvements 2006-02-21 08:08:14 +00:00
t1types.h Formatting, copyright years, documentation improvements. 2006-02-17 08:07:09 +00:00
tttypes.h Normalize quotation to `...'. 2006-03-24 12:46:49 +00:00