Henri Verbeet : d3d10: Validate the data size in parse_fx10() (AFL).
Module: wine Branch: master Commit: e36630f7025b749eb3dc120f6495dd1235ed609f URL: http://source.winehq.org/git/wine.git/?a=commit;h=e36630f7025b749eb3dc120f64... Author: Henri Verbeet <hverbeet(a)codeweavers.com> Date: Thu May 26 19:36:55 2016 +0200 d3d10: Validate the data size in parse_fx10() (AFL). Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/d3d10/effect.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/dlls/d3d10/effect.c b/dlls/d3d10/effect.c index 971e1c3..2eb0680 100644 --- a/dlls/d3d10/effect.c +++ b/dlls/d3d10/effect.c @@ -2180,6 +2180,12 @@ static HRESULT parse_fx10(struct d3d10_effect *e, const char *data, DWORD data_s const char *ptr = data; DWORD unknown; + if (!require_space(0, 19, sizeof(DWORD), data_size)) + { + WARN("Invalid data size %#x.\n", data_size); + return E_INVALIDARG; + } + /* Compiled target version (e.g. fx_4_0=0xfeff1001, fx_4_1=0xfeff1011). */ read_dword(&ptr, &e->version); TRACE("Target: %#x\n", e->version);
participants (1)
-
Alexandre Julliard