Uploaded image for project: 'Undertow'
  1. Undertow
  2. UNDERTOW-2251

Protocol error with HTTP/2 and Expect: 100-continue persists

XMLWordPrintable

      The bug described in UNDERTOW-2031 is not fully fixed:

      $ curl --http2 -X PUT  localhost:8080/ -d foo -X PUT -H 'Expect: 100-continue' --http2-prior-knowledge -v
      *   Trying 127.0.0.1...
      * TCP_NODELAY set
      * Connected to localhost (127.0.0.1) port 8080 (#0)
      * Using HTTP2, server supports multi-use
      * Connection state changed (HTTP/2 confirmed)
      * Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
      * Using Stream ID: 1 (easy handle 0x55a9becbe6b0)
      > PUT / HTTP/2
      > Host: localhost:8080
      > User-Agent: curl/7.61.1
      > Accept: */*
      > Expect: 100-continue
      > Content-Length: 3
      > Content-Type: application/x-www-form-urlencoded
      > 
      * Connection state changed (MAX_CONCURRENT_STREAMS == 4294967295)!
      * HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1)
      * stopped the pause stream!
      * Connection #0 to host localhost left intact
      curl: (92) HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1)
      

      The only part that was addressed by previous fix was this error message, that no longer occurs:

      http2 error: Invalid HTTP header field was received: frame type: 1, stream: 1, name: [content-length], value: [0]
      

              flaviarnn Flavia Rainone
              flaviarnn Flavia Rainone
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: