Al-Qurtas-Islamic-bank-The-.../src
Ben Wagner 034e5dbf92 [psaux] Full bounds check for OtherSubr 19.
It is possible for OtherSubr 19 to be invoked when `decoder->buildchar` is
NULL (so that `decoder->len_buildchar` is 0), the `blend` is non-NULL with
`blend->num_designs` set to 2, and the user supplied `idx` to be large (for
example 0xFFFFFFFE).  Since these are all `FT_UInt32` the existing bounds
check overflows in a well defined manner, allowing for an invalid call to
`memcpy`.

In addition, it is possible to call OtherSubr 19 with
`decoder->len_buildchar`, `blend->num_designs`, and `idx` all zero (implying
that `blend->weight_vector` and `decoder->buildchar` are NULL).  This passes
the bounds check (it is logically always fine to copy nothing starting at
index zero) but may invoke undefined behavior in `ft_memcpy` if it is backed
by `memcpy`.  Calling `memcpy` with either the `src` or `dst` NULL is
undefined behavior (even if `count` is zero).

* src/psaux/psintrp.c (cf2_interpT2CharString): Correctly check that
`blend->num_designs` can be copied to `decoder->buildchar[idx]`.
Also avoid passing NULL to `ft_memcpy`.

Bug: https://crbug.com/1299259
2022-02-23 17:42:55 +01:00
..
autofit * src/autofit/afglobal.c (af_face_globals_new): Reduce zeroing. 2022-01-18 14:05:46 -05:00
base * builds/mac/ftmac.c, src/base/ftmac.c: s|FT_MAC_H|<freetype/ftmac.h>|. 2022-02-19 13:36:25 +01:00
bdf * src/bdf/README: Updated. 2022-02-19 13:37:07 +01:00
bzip2 [bzip2] Reset bzip stream on any error. 2022-01-13 08:21:36 +01:00
cache * src/cache/ftcmru.c (FTC_MruList_New): Explain zeroing. 2022-02-02 11:32:58 -05:00
cff Minor clean-ups. 2022-01-27 22:55:34 -05:00
cid Update all copyright notices. 2022-01-11 10:54:10 +01:00
dlg Update all copyright notices. 2022-01-11 10:54:10 +01:00
gxvalid Update all copyright notices. 2022-01-11 10:54:10 +01:00
gzip Update all copyright notices. 2022-01-11 10:54:10 +01:00
lzw * src/lzw/ftlzw.c (FT_Stream_OpenLZW): Avoid unnecessary zeroing. 2022-01-13 09:45:48 -05:00
otvalid Update all copyright notices. 2022-01-11 10:54:10 +01:00
pcf [pcf] Delay encoding allocation and avoid its zeroing. 2022-01-26 11:23:38 -05:00
pfr * src/pfr/pfrload.c (pfr_phy_font_load): Use FT_QNEW_ARRAY. 2022-01-26 15:49:24 -05:00
psaux [psaux] Full bounds check for OtherSubr 19. 2022-02-23 17:42:55 +01:00
pshinter [pshinter] Tune PSH_STRONG_THRESHOLD_MAXIMUM value. 2022-02-12 23:42:08 -05:00
psnames Update all copyright notices. 2022-01-11 10:54:10 +01:00
raster Update all copyright notices. 2022-01-11 10:54:10 +01:00
sdf Fix sdf computation while `USE_SQUARED_DISTANCES`. 2022-01-27 18:01:08 +05:30
sfnt src/sfnt/ttkern.c (tt_face_load_kern): Micro-optimize. 2022-02-19 07:20:24 +01:00
smooth Update all copyright notices. 2022-01-11 10:54:10 +01:00
svg * src/svg/ftsvg.c (ft_svg_property_set): Disallow NULL pointers. 2022-01-23 19:05:15 +01:00
tools Update all copyright notices. 2022-01-11 10:54:10 +01:00
truetype Various minor doc fixes. 2022-02-06 21:06:52 +01:00
type1 [psaux, type1, type42] Avoid annecessary zeroing. 2022-01-20 14:47:01 -05:00
type42 [type42] Fix `FT_Get_PS_Font_Private` for this format. 2022-02-11 19:32:49 +01:00
winfonts * src/winfonts/winfnt.c (fnt_face_get_dll_font): Trace font resources. 2022-02-03 14:32:50 +00:00