]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Fix more stupid off-by-one errors parsing the request line.
authoradrian <>
Mon, 2 Oct 2006 18:08:20 +0000 (18:08 +0000)
committeradrian <>
Mon, 2 Oct 2006 18:08:20 +0000 (18:08 +0000)
src/HttpMsg.cc

index 58e96df9765dad6491acff30739be324178c4a10..b6fc40324a50444deaea79f3e2d2a451610a90df 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: HttpMsg.cc,v 1.38 2006/10/02 06:03:23 adrian Exp $
+ * $Id: HttpMsg.cc,v 1.39 2006/10/02 12:08:20 adrian Exp $
  *
  * DEBUG: section 74    HTTP Message
  * AUTHOR: Alex Rousskov
@@ -472,11 +472,11 @@ HttpParserParseReqLine(HttpParser *hmsg)
        hmsg->req_end = -1;
        for (i = 0; i < hmsg->bufsiz; i++) {
                if (hmsg->buf[i] == '\n') {
-                       hmsg->req_end = i + 1;
+                       hmsg->req_end = i;
                        break;
                }
                if (i < hmsg->bufsiz - 1 && hmsg->buf[i] == '\r' && hmsg->buf[i + 1] == '\n') {
-                       hmsg->req_end = i + 2;
+                       hmsg->req_end = i + 1;
                        break;
                }
        }
@@ -484,8 +484,7 @@ HttpParserParseReqLine(HttpParser *hmsg)
                retcode = 0;
                goto finish;
        }
-       assert(hmsg->buf[hmsg->req_end] != '\n');
-       assert(hmsg->buf[hmsg->req_end - 1] == '\n');
+       assert(hmsg->buf[hmsg->req_end] == '\n');
        /* Start at the beginning again */
        i = 0;