]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Bugzilla 403: url_convert_hex buffer overrun
authorhno <>
Tue, 20 Aug 2002 04:47:54 +0000 (04:47 +0000)
committerhno <>
Tue, 20 Aug 2002 04:47:54 +0000 (04:47 +0000)
src/url.cc

index 699b40f016fc21b36e67f011e3fa57cb20ab0ca2..9f242a4ab845f114d2cc16b7eba6d883347e292a 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: url.cc,v 1.134 2002/07/21 11:54:02 hno Exp $
+ * $Id: url.cc,v 1.135 2002/08/19 22:47:54 hno Exp $
  *
  * DEBUG: section 23    URL Parsing
  * AUTHOR: Duane Wessels
@@ -130,8 +130,8 @@ url_convert_hex(char *org_url, int allocate)
     url = allocate ? (char *) xstrdup(org_url) : org_url;
     if ((int) strlen(url) < 3 || !strchr(url, '%'))
        return url;
-    for (s = t = url; *(s + 2); s++) {
-       if (*s == '%') {
+    for (s = t = url; *s; s++) {
+       if (*s == '%' && *(s + 1) && *(s + 2)) {
            code[0] = *(++s);
            code[1] = *(++s);
            *t++ = (char) strtol(code, NULL, 16);