Rob Shearman : wininet: Fix an off-by-one error in the boundary checks in HTTP_DecodeBase64.
Module: wine Branch: master Commit: f8f9dbbbe7de084fb9751abd4b523d357b605843 URL: http://source.winehq.org/git/wine.git/?a=commit;h=f8f9dbbbe7de084fb9751abd4b... Author: Rob Shearman <rob(a)codeweavers.com> Date: Fri Feb 15 10:06:32 2008 +0000 wininet: Fix an off-by-one error in the boundary checks in HTTP_DecodeBase64. --- dlls/wininet/http.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dlls/wininet/http.c b/dlls/wininet/http.c index 0245d2b..083eda6 100644 --- a/dlls/wininet/http.c +++ b/dlls/wininet/http.c @@ -1129,9 +1129,9 @@ static UINT HTTP_DecodeBase64( LPCWSTR base64, LPSTR bin ) { signed char in[4]; - if (base64[0] > ARRAYSIZE(HTTP_Base64Dec) || + if (base64[0] >= ARRAYSIZE(HTTP_Base64Dec) || ((in[0] = HTTP_Base64Dec[base64[0]]) == -1) || - base64[1] > ARRAYSIZE(HTTP_Base64Dec) || + base64[1] >= ARRAYSIZE(HTTP_Base64Dec) || ((in[1] = HTTP_Base64Dec[base64[1]]) == -1)) { WARN("invalid base64: %s\n", debugstr_w(base64));
participants (1)
-
Alexandre Julliard