From: Jan Klemkow Date: Thu, 24 Nov 2011 11:11:42 +0000 (-0700) Subject: Bug 3423: access violation in URL parser X-Git-Tag: SQUID_3_1_17~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=37264352f52dad6f15ef4e9a2ccf223f8a94370f;p=thirdparty%2Fsquid.git Bug 3423: access violation in URL parser --- diff --git a/src/url.cc b/src/url.cc index 79fab548cb..e6a855ac30 100644 --- a/src/url.cc +++ b/src/url.cc @@ -249,8 +249,7 @@ urlParse(const HttpRequestMethod& method, char *url, HttpRequest *request) *dst = '\0'; /* Then its :// */ - /* (XXX yah, I'm not checking we've got enough data left before checking the array..) */ - if (*src != ':' || *(src + 1) != '/' || *(src + 2) != '/') + if ((i+3) > l || *src != ':' || *(src + 1) != '/' || *(src + 2) != '/') return NULL; i += 3; src += 3;