Commit Graph

984 Commits

Author SHA1 Message Date
Chris Ross (ASP.NET) a8073167e7 Revert "Flush response headers #3031"
This reverts commit 277a5502fd.
2018-10-23 15:49:11 -07:00
Stephen Halter 2a610ee1b8
Reduce flakiness of LargeUpload tests (#3036)
* Move h2spec tests to own project
2018-10-22 11:38:53 -07:00
Chris Ross (ASP.NET) ad3cba5509 Disable inheritance test on linux #3034 2018-10-22 11:24:11 -07:00
Chris Ross (ASP.NET) 277a5502fd Flush response headers #3031 2018-10-19 18:00:24 -07:00
Chris Ross (ASP.NET) 23a4e11261 Send RST for canceled HTTP/2 writes #3007 2018-10-19 11:03:44 -07:00
Chris Ross (ASP.NET) d3f2ca9c9a Do not inherit socket handles #2789 2018-10-18 12:19:58 -07:00
Chris Ross (ASP.NET) 1d3090f056 Only reset the request body pipe for HTTP/1 #3006 2018-10-17 16:28:33 -07:00
John Luo 97acb95715 Set default protocol to HTTP/1.x 2018-10-17 11:11:02 -07:00
Stephen Halter 194b18b115
Fix test flakiness caused by not reading in a loop (#3023)
Fixes #3021
2018-10-16 18:15:46 -07:00
John Luo 06dbdf5ced Increase retry count 2018-10-15 19:05:19 -07:00
John Luo 4b9a3fcc05 Skip falky tests caused by https://github.com/dotnet/corefx/issues/30691 2018-10-15 18:46:36 -07:00
Stephen Halter e5ec72c833
Add test to verify HTTP/2 preamble is included in keep-alive timeout (#3011)
#2900
2018-10-15 11:09:25 -07:00
Chris Ross 3a1cf72451
#3009 HTTP/2 Test stabalization (#3010) 2018-10-12 17:14:44 -07:00
Stephen Halter 1f2e704dd3
Implement MinResponseDataRate for HTTP/2 (#3003)
#2807
2018-10-12 13:15:46 -07:00
Chris Ross (ASP.NET) 081cef0934 Track aborted streams for a given grace period #2832 2018-10-11 12:55:26 -07:00
Stephen Halter 8bca6b3877
Add HTTP/2 keep-alive and request header timeouts (#2992) 2018-10-08 17:06:15 -07:00
Chris Ross (ASP.NET) daf6e1ecd7 Http/2 response trailers #622 2018-10-05 12:50:46 -07:00
George Drak e9eea50966 Implement #2230 - Consume BindingAddress instead of ServerAddress (#2975)
* #2230 Mark ServerAddress as obsolete

* #2230 suppress CS0618 errors for obsoleted ServerAddress class

* #2230 Use BindingAddress instead of ServerAddress
2018-10-05 10:34:00 -07:00
Stephen Halter f91ae20a3c
Improve RequestAborted token handling (#2977)
- Improve test reliability of tests verifying the RequestAborted token gets tripped
- Once the response body is completed, don't fire the token for that request even if it is accessed later on.
2018-10-04 16:48:50 -07:00
Stephen Halter b3f9f38ac6 Test LibuvConstants.IsConnectionReset 2018-10-04 15:40:09 -07:00
Chris Ross (ASP.NET) 35d35f22a3 Disallow any frames after a reset is received #2154 2018-10-04 09:40:21 -07:00
Stephen Halter 5bd2a41517
Make transport logs for connection close more detailed and consistent (#2978) 2018-10-03 12:41:00 -07:00
Simon Cropp d4ab8b27a9 typos, inline outs, redundant usings (#2965) 2018-09-28 11:14:59 -07:00
Stephen Halter e9c2acf4dc
Add HTTP/2 response draining timeout (#2956)
* Move drain timeout to Http1Connection
* Add TimeoutControl class
2018-09-27 17:59:12 -07:00
John Luo f56b682b36 Impose integer decode limit in HPACK 2018-09-26 17:18:24 -07:00
Chris Ross (ASP.NET) 01b35bc391 Make HTTP/2 connection and stream windows configurable #2814 2018-09-24 15:31:50 -07:00
John Luo ceaa3c86fc Add configurability for max header field size in HPACK 2018-09-24 10:53:15 -07:00
Stephen Halter f3b6430aab
Initialize Heartbeat in KestrelServer.StartAsync (#2939)
Fixes #2850 again
2018-09-17 16:43:30 -07:00
tiago-soczek a7e412ec80 Fix category logger for HttpsConnectionAdapter and LoggingConnectionAdapter. #2929 (#2935) 2018-09-17 16:01:14 -07:00
Chris Ross (ASP.NET) b8423b8530 Change how HTTP/2 frames are parsed and generated #2858 2018-09-17 14:48:43 -07:00
John Luo 69ff195f66 Enable hpack/4.2 - Maximum Table Size test
- Ensure dynamic tables size updates occur at the beginning of the header block
2018-09-17 12:46:51 -07:00
John Luo 025aca52df Port long Huffman encoding bug fix
https://github.com/dotnet/corefx/pull/32043
2018-09-17 12:41:36 -07:00
Chris Ross (ASP.NET) 55e5e56422 Dispatch Http/2 write callbacks #2878 2018-09-13 11:53:30 -07:00
Chris Ross (ASP.NET) f38f60f8ce Map ListenOptions.Protocols from IConfiguration #2903 2018-09-10 16:27:51 -07:00
John Luo de5ccb5c78 PR feedback for https://github.com/aspnet/KestrelHttpServer/pull/2838 2018-09-10 13:58:46 -07:00
Stephen Halter f47aa1283e
Make usage of TestConnection.Receive vs ReceiveEnd consistent (#2896)
- Add a transport test verifying that concurrent requests/connections work.
2018-09-07 18:09:51 -07:00
Simon Cropp d3d7c55198 fix some spelling (#2888) 2018-09-06 11:48:25 -07:00
Chris Ross (ASP.NET) b8e56691cb Implement MaxRequestLineSize for HTTP/2 #2813 2018-09-06 10:01:28 -07:00
Chris Ross (ASP.NET) 384a518bda Implement MaxRequestHeadersTotalSize for HTTP/2 #2812 2018-09-06 09:07:16 -07:00
David Fowler edc1935475
Flow the cancellation tokens to ReadAsync and WriteAsync (#2865) 2018-09-06 09:04:39 -07:00
Chris Ross (ASP.NET) 991cfa8bd8 Remove limits on SETTINGS_HEADER_TABLE_SIZE #2874 2018-09-04 12:01:13 -07:00
John Luo 153020ef8a Allow UTF8 encoded header values 2018-08-30 16:21:34 -07:00
Stephen Halter 89f4850883
Avoid throwing the same exception instances in parallel (#2859) 2018-08-28 10:56:46 -07:00
David Fowler 6dc55a0462
Don't preserve the ExecutionContext when dispatching callbacks (#2861)
* Don't preserve the ExecutionContext when dispatching callbacks
- The layers up stack already preserve and restore the ExecutionContext, there's no need to capture and run for the scheduler callback and cancellation token callback
2018-08-28 09:32:33 -07:00
Stephen Halter f70ba53253
Fix race when SystemClock is accessed before first heartbeat (#2851) 2018-08-27 10:59:29 -07:00
John Luo f6cc980b2c Revert "Remove default port tests"
This reverts commit 74f4387807.
2018-08-24 13:55:15 -07:00
John Luo 64127e6c76 Implement MaxFrameSize and HeaderTableSize for HTTP/2 2018-08-24 11:07:41 -07:00
Stephen Halter e5a1101239
Improve exception handling in SocketConnection (#2844)
- Avoid race where a connection reset observed by both DoSend() and DoReceive()
  resulted in a ConnectionAbortedException being thrown from the input Pipe
  instead of a ConnectionResetException.
2018-08-23 16:59:02 -07:00
David Fowler 68a0863524
General connection management (#2834)
This change makes the handling of graceful shutdown work for more than just http scenarios. This should allow us to move TLS further out and should also allow us to start moving things to connection middleware instead of connection adapters.
Summary of the things changed/added:
- Added IConnectionLifetimeNotificationFeature that represents an attempt to gracefully close the connection that isn't being aborted. This feels pretty awful but we may have to do it.
- Moved connection management to the ConnectionDispatcher and out of the HttpConnectionMiddleware
- Removed Http from the names of the ConnectionManager and Heartbeat
2018-08-22 20:35:28 -07:00
John Luo 74f4387807 Remove default port tests 2018-08-20 15:54:41 -07:00