Commit Graph

1253 Commits

Author SHA1 Message Date
Nate McMaster 1f3524787e
Merge branch 'release/2.1' into release/2.2 2018-07-24 11:43:13 -07:00
Chris Ross (ASP.NET) 612fcca729 Validate Http/2 pseudo headers #2205 #2263 #2659 2018-07-19 16:25:10 -07:00
Stephen Halter 603cd03bfa
Stop writing responses after the unexpected end of request content (#2734) 2018-07-19 14:18:57 -07:00
David Fowler b934e46161
Complete the transport pipes after connection middleware runs (#2735) 2018-07-19 11:49:46 -07:00
Chris Ross (ASP.NET) 429bcfe216 Sending and receiving RST frames. #2462 2018-07-16 09:13:11 -07:00
John Luo 6551eae321 Consolidate HTTP charset validation logic 2018-07-13 16:47:28 -07:00
Stephen Halter f179339a79 Combine BufferWriter and CountingBufferWriter 2018-07-12 11:58:49 -07:00
Stephen Halter 864cfeb2aa Merge branch 'release/2.1' into release/2.2 2018-07-12 11:18:41 -07:00
Nate McMaster 128eefdef3
Remove usage of the Microsoft.Extensions.Buffers.Sources package, copy the source into Kestrel
This moves source code that used to be in aspnet/Common. It was only used here, so this simplifies the process of working with these internal-only APIs.

cref https://github.com/aspnet/Common/pull/386
2018-07-11 22:31:23 -07:00
Stephen Halter a826f478ad Implement HTTP/2 output flow control (#2690) 2018-07-10 14:11:59 -07:00
Nate McMaster 1d9db7c25f
Merge 2.1.2 into release/2.1 2018-07-10 10:34:35 -07:00
Stephen Halter 2ab22ac55a Merge branch 'release/2.1' into dev 2018-06-28 11:27:11 -07:00
Stephen Halter ac31e5ab30
[2.1.3] Consistently handle connection aborts (#2619)
* Decouple connection objects from the server (#2535)

- Making progress towards being able to use the connection objects on the client side.

* Wait for input writer to complete before calling OnConnectionClosed (#2566)

* Wait for the ConnectionClosed token to stop tracking connections (#2574)

- The prior strategy of waiting for the pipe completed callbacks doesn't work
  because blocks are returned to the memory pool after the callbacks are fired.

* Consistently handle connection resets (#2547)

* Provide better connection abort exceptions and logs

* void IConnectionDispatcher.OnConnection
2018-06-28 10:51:22 -07:00
John Luo 423d5432be Add test for ensuring HPACK lowercase header names
- ensure lowercase mask only applied to uppercase letters
2018-06-26 10:44:21 -07:00
Chris Ross (ASP.NET) 61e16e2b31 Automation for h2spec functional tests #2640 2018-06-21 11:17:16 -07:00
Chris Ross (ASP.NET) 324565772c Prevent app code from blocking the connection loop #2657 2018-06-20 11:06:49 -07:00
Chris Ross (ASP.NET) c498f03cb4 Expose Tls details as a feature. #2661
Limit Http/2 to TLS 1.2 #2251
Bootstrap functional tests #2238
2018-06-18 16:25:18 -07:00
Stephen Halter 14f020cf11
Improve tracking of connection lifetime (#2646) 2018-06-15 11:10:38 -07:00
John Luo 13663e1e15 Convert to using definitions from HeaderNames 2018-06-13 11:24:24 -07:00
Nate McMaster ff3f0e905d
Merge branch 'release/2.1' into release/2.1.2 2018-06-12 14:16:29 -07:00
Chris Ross (ASP.NET) a217206f1f Enforce max frame size #2651 2018-06-11 14:20:43 -07:00
Chris Ross (ASP.NET) 810a302e66 Disable AllowRenegotiation for HTTP/2 2018-06-11 13:51:23 -07:00
Chris Ross (ASP.NET) 00827e38bb Harden TFM checks #2624 2018-06-07 14:56:23 -07:00
Stephen Halter 0aff4a0440
Handle client and server aborts differently from eachhother (#2612)
* Trace when app aborts connection
* Improve exception messages
* Always abort connection with ConnectionAbortedException
* Add ConnectionContext.Abort(Exception)
2018-06-01 14:42:30 -07:00
Stephen Halter aa9b9ca724 Merge branch 'release/2.1' into dev 2018-05-31 16:29:14 -07:00
Stephen Halter e4d290b601
Fix Json regression in Socket Transport (#2578) 2018-05-31 16:28:25 -07:00
Stephen Halter d1416e679b
[2.1.1] Provide clearer exception message for breaking change (#2623)
- In 2.1, the default transport (Sockets) can no longer bind to certain
  endpoint types (Unix domain sockets and open socket handles).
- The new message recommends manually selecting the libuv transport
  to work around this issue.
2018-05-31 15:45:26 -07:00
Stephen Halter af177c5adc
Add Memory<byte> overloads to HttpUpgradeStream (#2622) 2018-05-31 15:44:39 -07:00
Stephen Halter 9e15b2bca4
Fix PipeReader consumption pattern [2.1] 2018-05-31 11:27:38 -07:00
Chris Ross (ASP.NET) 7e43d35049 Make ListenOptions.Protocols public again for HTTP/2 work 2018-05-30 12:25:38 -07:00
Stephen Halter f80091a328 Merge branch 'release/2.1' into dev 2018-05-29 16:37:16 -07:00
Stephen Halter 5ec7bacdfe
Lower severity of AuthenticationException logs from SslStream handshake (#2614) 2018-05-29 16:27:16 -07:00
Stephen Halter a9d6cf13eb
Consistently handle connection resets (#2547) 2018-05-22 16:38:21 -07:00
Pavel Krymets 27799b5acb
Enable pubternability analyzer (#2560) 2018-05-16 13:42:56 -07:00
Stephen Halter f8f6f39f55
Wait off the ConnectionClosed token to stop tracking ConnectionCallback (#2574)
- The prior strategy of waiting for the pipe completed callbacks doesn't work
  because blocks are returned to the memory pool after the callbacks are fired.
2018-05-15 12:38:35 -07:00
Stephen Halter c683316253
Generate repetitive TransportConnection FeatureCollection code (#2548) 2018-05-14 17:20:48 -07:00
John Luo 04f2101696 Reenable api check 2018-05-14 13:36:39 -07:00
Stephen Halter 514917b9a8
Wait for input writer to complete before calling OnConnectionClosed (#2566) 2018-05-14 11:51:49 -07:00
Stephen Halter b040e33b1b Merge branch 'release/2.1' into dev 2018-05-10 23:47:51 -07:00
Stephen Halter da21fc89cf
Handle exception in SocketConnection.Shutdown() (#2562) 2018-05-10 23:39:06 -07:00
Stephen Halter e6a88c1b9c
Relieve response backpressure immediately when closing socket (#2557)
* Relieve response backpressure immediately when closing socket
2018-05-10 17:13:57 -07:00
Stephen Halter f04118fca1 Merge branch 'halter73/merge-2.1-dev' into dev 2018-05-09 17:27:47 -07:00
Pranav K 80fa1d699d Upgrade to netcoreapp2.2
This reverts commit fe9da3c57b.
2018-05-09 16:43:15 -07:00
Ryan Brandenburg fe9da3c57b Revert "Don't touch product repos"
This reverts commit 8e9f05b902.
2018-05-08 16:52:48 -07:00
Ryan Brandenburg 8e9f05b902 Don't touch product repos 2018-05-08 15:38:20 -07:00
Ryan Brandenburg 350310aa96 Handle netcoreapp cases 2018-05-08 15:38:20 -07:00
Stephen Halter c8d374af64 Merge branch 'release/2.1' into dev
# Conflicts:
#	build/dependencies.props
#	korebuild-lock.txt
#	src/Kestrel.Transport.Libuv/Internal/LibuvConnectionContext.cs
2018-05-07 15:47:20 -07:00
Nate McMaster 05d68efbae
Merge branch 'release/2.1.0-rc1' into release/2.1 2018-05-07 14:35:41 -07:00
Stephen Halter 5c17bff55d
Don't throw on FIN from upgraded connections (#2533)
* Allow app to drain request buffer after FIN
2018-05-04 16:21:07 -07:00
Stephen Halter 8b1fbad10e
Don't complete KestrelServer.StopAsync task inline (#2534) 2018-05-03 17:01:36 -07:00