Pavel Krymets
fff3e1ebd0
Validate benchmarks ( #2126 )
2017-10-23 09:51:00 -07:00
Cesar Blum Silveira
3fbfba63f8
HTTP/2: implement 100-continue ( #2106 )
2017-10-18 16:31:50 -07:00
Stephen Halter
c57aa3b2a8
Treat more exceptions from Socket.ReceiveAsync as aborted connections ( #2122 )
2017-10-18 12:40:37 -07:00
Ryan Brandenburg
34c3233db9
Add RepositoryRoot
2017-10-18 09:40:24 -07:00
Cesar Blum Silveira
d4f263acce
Fix typos in project names.
2017-10-16 14:13:05 -07:00
Stephen Halter
733ac1efab
Handle EPIPE like ECONNRESET on Linux ( #2112 )
2017-10-13 15:07:21 -07:00
Cesar Blum Silveira
9dfffd14bb
HTTP/2: support trailers.
2017-10-12 17:26:20 -07:00
Stephen Halter
66a3c9496a
Set SO_REUSEADDR on managed listen sockets on Unix ( #2111 )
...
- https://github.com/dotnet/corefx/issues/24562
2017-10-12 12:26:52 -07:00
Cesar Blum Silveira
deed6c9780
HTTP/2: add exception error messages and log them.
2017-10-12 11:23:57 -07:00
Stephen Halter
fdb4184dbf
Sockets transport ( #2100 )
...
* Make Sockets the default transport
* Create separate Libuv and Sockets functional test projects
* Fix functional tests that fail with Sockets
* Moved OneToTenThreads test to Kestrel.Transport.Libuv.Tests
* Fix systemd activation tests to use libuv transport
* Dispose Sockets PipeFactory
* Improve Socket's server-side abort handling
* Add explicit rebinding test
2017-10-11 15:14:35 -07:00
Cesar Blum Silveira
d46d2ce193
HTTP/2: validate request headers prior to starting new stream.
2017-10-10 13:12:34 -07:00
Ryan Brandenburg
08c6c38667
Update bootstrappers
2017-10-09 12:46:27 -07:00
Vladimir Sadov
2ce4719690
new toolset compiler - 2.6.0-beta1-62126-01 ( #2090 )
...
This was a "special" build, so there is no public VSIX for this.
The old one should be ok, for most scenarios.
When VS 15.5 preview1 is available it will match this compiler feature-wise by default.
2017-10-06 10:08:56 -07:00
Nate McMaster
e2c22b91af
Minor test code changes to resolve xUnit2013 build warning
2017-10-06 08:50:58 -07:00
Cesar Blum Silveira
11ce1395e5
HPACK fixes and improvements.
2017-10-04 12:59:41 -07:00
Stephen Halter
156ddfc4e8
Fix EOF handling of TlsStream.ReadAsync ( #2094 )
2017-10-04 12:38:19 -07:00
Stephen Halter
83e2084368
Fix flaky MaxRequestBodySizeTest ( #2092 )
...
- Don't attempt to send any data after the request might already be rejected.
2017-10-03 14:34:14 -07:00
Cesar Blum Silveira
1b1137b880
HTTP/2: connection error when receiving frames disallowed by stream states.
2017-10-02 10:24:57 -07:00
Cesar Blum Silveira
bb9840a552
HTTP/2: do not ACK PING frames received with ACK set.
2017-09-29 16:40:01 -07:00
Cesar Blum Silveira
551c1ebc0b
Configure enabled protocols per endpoint and add HTTP/2 w/ prior knowledge support ( #2067 ).
2017-09-27 10:14:39 -07:00
Javier Calvarro Nelson
eb9417b577
Re-enable API Check
2017-09-25 15:16:53 -07:00
Javier Calvarro Nelson
49237c7651
Add API check baselines for 2.0
2017-09-25 15:03:09 -07:00
Cesar Blum Silveira
343ce0f01b
HTTP/2: close connection with PROTOCOL_ERROR when a stream depends on itself.
2017-09-22 16:35:12 -07:00
Justin Kotalik
af7944047d
Increase Minimum Version of Visual Studio to 15.3.0
2017-09-21 17:52:06 -07:00
Cesar Blum Silveira
e3533885a8
HTTP/2: close connection with PROTOCOL_ERROR when receiving a frame with an even stream ID.
2017-09-21 12:26:09 -07:00
Cesar Blum Silveira
a4887f4caf
HTTP/2: close connection with PROTOCOL_ERROR when receiving GOAWAY frame with non-zero stream ID.
2017-09-21 11:57:31 -07:00
Cesar Blum Silveira
fc56552b2a
HTTP/2: close connection on PING frame with non-zero stream ID.
2017-09-21 11:23:15 -07:00
Cesar Blum Silveira
555a881cb7
HTTP/2: close connection with PROTOCOL_ERROR when an unknown frame type is interleaved with headers.
2017-09-21 11:20:52 -07:00
Cesar Blum Silveira
e2af346733
HTTP/2: close the connection with PROTOCOL_ERROR when a PUSH_PROMISE frame is received.
2017-09-21 11:20:33 -07:00
Cesar Blum Silveira
9687079723
Check if HTTP/2 frame writer has already been aborted.
2017-09-20 11:15:31 -07:00
Cesar Blum Silveira
9944c0fd43
Fix reading DATA frames with maximum length.
2017-09-20 11:15:31 -07:00
Cesar Blum Silveira
c8f9364e3e
Expose connection features to HTTP/2 connections.
2017-09-20 11:14:15 -07:00
Cesar Blum Silveira
91eb4cd54c
Fix flakiness in KeepAliveTimeoutTests.ConnectionKeptAliveBetweenRequests ( #1684 ).
2017-09-18 15:12:13 -07:00
Vladimir Sadov
1470ee0658
Updating toolset compiler ( #2052 )
2017-09-18 15:07:47 -07:00
Cesar Blum Silveira
a31d1e024c
Merge code paths duplicated between HTTP/1.x and HTTP/2 implementations ( #2017 ).
...
- Most of the shared code is in the HttpProtocol class (former Frame)
- Virtual calls handle protocol-specific things
- Move the ProcessRequestsAsync loop to HttpProtocol
- Implement HTTP/1.x request processing in Http1Connection and HTTP/2
in Http2Stream, with Http1Connection<T> and Http2Stream<T> subclassing
those classes in order to handle the generic HttpContext parameter
- Split MessageBody into Http1MessageBody and Http2MessageBody,
with MessageBody containing shared member variables and methods
2017-09-14 17:35:57 -07:00
Cesar Blum Silveira
d28b413390
Add tracing to KeepAliveTimeoutTests.ConnectionKeptAliveBetweenRequests to investigate test failures.
2017-09-14 16:55:44 -07:00
Cesar Blum Silveira
da7bc24eec
Add request parsing regression tests.
2017-09-13 14:49:45 -07:00
Stephen Halter
1e465e9643
Improve timeout logic
2017-09-08 12:50:01 -07:00
Cesar Blum Silveira
66d8e8198d
Re-enable TestKeepAliveTimeout.
2017-09-07 17:24:33 -07:00
Vladimir Sadov
f0ade24cf7
Updating to new toolset compiler. ( #2043 )
...
* Updating to new toolset compiler.
Now includes ref escaping rules.
* newer version.
2017-09-06 15:52:47 -07:00
Stephen Halter
284367db9f
Improve ConnectionLimitMiddleware and connection pipeline building ( #2010 )
...
* Improve ConnectionLimitMiddleware and connection pipeline building
* Add IDecrementConcurrentConnectionCountFeature
* Flow connection features from connection middleware
2017-08-30 11:30:20 -07:00
Ben Adams
e7743cbb78
Shorter LibuvThread locks ( #2034 )
2017-08-29 12:21:45 -07:00
Damir Ainullin
5bf7d3b28a
Fix typo in FrameTests ( #2033 )
2017-08-27 20:11:00 -07:00
David Fowler
9d8556e7c4
Added FrameConnection.OnConnectionClosed back ( #2028 )
2017-08-26 21:20:06 -07:00
David Fowler
7854c0604a
Remove the events on ConnectionContext ( #2023 )
...
- Use the pipe events and removed the Tasks from ConnectionContext
- Remove OnConnectionClosed from FrameConnection. Since the `FrameConnetion` is a single middleware, not the entire pipeline, we shouldn't need to wait on the connection close there.
- It seems like the callbacks are rooted on the pipe even after they fire. This needs to be investigated in pipelines.
2017-08-26 20:19:55 -07:00
Ben Adams
09be7c416a
Use preparsed version, rather than reparsing ( #2021 )
...
Current path is:
Parser -> HttpVersion Enum -> Get Version String -> Set `HttpVersion` with string -> Convert back to Enum
Can just set the enum directly since its already parsed.
Also using the const rather than strings; where the strings are in code
2017-08-26 17:18:16 -07:00
Ben Adams
088f7e32ae
Reset StatusCode & ReasonPhrase directly ( #2025 )
2017-08-26 17:14:45 -07:00
Nate McMaster
4735154ecd
Install .NET Core 1.1.2
2017-08-26 11:18:15 -07:00
Cesar Blum Silveira
a145734d43
Fix flakiness in ConnectionClosedWhenResponseDoesNotSatisfyMinimumDataRate ( #1955 ).
2017-08-24 10:17:05 -07:00
David Fowler
dc9ed60465
Create the connection logging scope in ConnectionHandler ( #2013 )
...
- Instead of doing it on the FrameConnection only. This will
make sure all middleware logs get the connection id as part of their scope.
2017-08-22 14:32:58 -07:00