This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/main by this push:
     new 32a7cfe  More robust checking mechanism for HTTP/2 headers
32a7cfe is described below

commit 32a7cfec0f703884ef08406972cdc5d003f0af16
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Tue Oct 12 18:03:56 2021 +0100

    More robust checking mechanism for HTTP/2 headers
    
    Makes better allowance for additional frames (such as reset, ping, etc.)
    that might appear.
---
 test/jakarta/servlet/http/TestHttpServletDoHead.java | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/test/jakarta/servlet/http/TestHttpServletDoHead.java 
b/test/jakarta/servlet/http/TestHttpServletDoHead.java
index 5891da5..811ee8e 100644
--- a/test/jakarta/servlet/http/TestHttpServletDoHead.java
+++ b/test/jakarta/servlet/http/TestHttpServletDoHead.java
@@ -143,11 +143,13 @@ public class TestHttpServletDoHead extends Http2TestBase {
         buildGetRequest(frameHeaderGet, headersPayloadGet, null, 3, "/test");
         writeFrame(frameHeaderGet, headersPayloadGet);
 
+        // Want the headers frame for stream 3
         parser.readFrame(true);
-        String traceGet = output.getTrace();
-        while (!output.getTrace().endsWith("3-EndOfStream\n")) {
+        while (!output.getTrace().startsWith("3-HeadersStart\n")) {
+            output.clearTrace();
             parser.readFrame(true);
         }
+        String traceGet = output.getTrace();
         output.clearTrace();
 
         // Head request
@@ -156,7 +158,10 @@ public class TestHttpServletDoHead extends Http2TestBase {
         buildHeadRequest(frameHeaderHead, headersPayloadHead, 5, "/test");
         writeFrame(frameHeaderHead, headersPayloadHead);
 
-        while (!output.getTrace().endsWith("5-EndOfStream\n")) {
+        // Want the headers frame for stream 5
+        parser.readFrame(true);
+        while (!output.getTrace().startsWith("5-HeadersStart\n")) {
+            output.clearTrace();
             parser.readFrame(true);
         }
         String traceHead = output.getTrace();

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to