Commit Graph

253 Commits

Author SHA1 Message Date
Louis DeJardin dffd977c3f Fixing field names 2015-09-02 20:50:21 -07:00
Louis DeJardin 5c7007a4e9 Fixing member field name 2015-09-02 20:37:11 -07:00
Louis DeJardin 0859d82d6b Adding private keyword to private enums 2015-09-02 20:33:51 -07:00
Louis DeJardin 3bbb77f9d0 Alphabetizing using statements 2015-09-02 20:31:11 -07:00
Louis DeJardin b25d2d9772 Continued updates for #184
* Reordering members
- Fields
- Constructors
- Properties
- EverythingElse
- NestedTypes

* Removing commented code
2015-09-02 20:08:54 -07:00
Louis DeJardin bf6a163f46 Generalizing type member order rule 2015-09-02 13:34:43 -07:00
Louis DeJardin 2467cf2ade Nested types must be last 2015-09-02 00:07:58 -07:00
Louis DeJardin 46604d68b3 Initial commit for style cleanup #184
* adding private keyword to fields
* one type per file
2015-09-01 22:25:51 -07:00
Chris R c2192d7bd1 Change IServerInformation to IFeatureCollection. 2015-09-01 15:27:57 -07:00
David Fowler e8b6908b04 Update README.md 2015-09-01 02:20:22 -07:00
Stephen Halter e1b472ddc4 Add ServerAddress tests 2015-08-31 10:46:50 -07:00
Stephen Halter d0bd2b3dd0 Configure unix pipes via the hostname instead of the scheme. 2015-08-31 10:46:48 -07:00
Stephen Halter a919ea8d0a Remove unnecessary listener interfaces 2015-08-31 10:46:46 -07:00
Stephen Halter a9b8cfa582 Remove unnecessary use of generics in listeners 2015-08-31 10:46:40 -07:00
Chris R 803ec38073 React to string[] -> StringValues changes. 2015-08-28 12:59:00 -07:00
Stephen Halter 40ca61b640 Merge branch 'release' into dev 2015-08-26 16:32:19 -07:00
Stephen Halter 2642c84bf9 Don't automatically set Content-Length: 0 in some circumstances
- When in response to a HEAD Request
- For 101, 204, 205 and 304 responses
- For non keep-alive connections
2015-08-26 16:16:35 -07:00
Stephen Halter 69759231ff Set Content-Length: 0 when an AppFunc completes without a write
- Previously an incomplete chunked response would be written instead.
- Add test to verify Content-Length: 0 is set automatically.
- Add test to verify HTTP/1.0 keep-alive isn't used if no Content-Length
  is set for the response.
- Add tests to verify errors are handled properly after chunked writes.

#173
2015-08-25 23:17:41 -07:00
Stephen Halter ca0a42a01e Merge branch 'Daniel15/unix-sockets' into dev 2015-08-24 12:53:31 -07:00
N. Taylor Mullen 41b7ce4b23 Update 'build.sh' to pull Sake from v2 NuGet feed. 2015-08-20 20:46:47 -07:00
N. Taylor Mullen 6bddf101ed Update 'build.cmd' to pull Sake from v2 NuGet feed. 2015-08-20 15:37:56 -07:00
Stephen Halter 87d53700da Make the GeneratedCode project work on CoreCLR 2015-08-19 17:08:00 -07:00
N. Taylor Mullen f61a7b64ff Update NuGet feed from v2 => v3. 2015-08-19 14:54:19 -07:00
Pranav K 7cdfdddaa0 Unpinnng Dnx.Runtime.Abstractions package version 2015-08-18 21:34:43 -07:00
Pranav K 06551cda3d Updating to aspnetliterelease. 2015-08-18 14:00:22 -07:00
Pranav K b9dec6acfe Updating to aspnetlitedev. 2015-08-18 14:00:22 -07:00
Pranav K d4b686ebea Merge branch 'release' into dev 2015-08-18 14:00:22 -07:00
Stephen Halter 58292c6620 Update "Kestrel" dependency in samples after rename 2015-08-17 15:55:04 -07:00
Pranav K c46fc555ae Merge branch 'release' into dev 2015-08-17 14:48:46 -07:00
Pranav K ed9cd0ec11 Updating to release NuGet.config. 2015-08-17 14:48:44 -07:00
Daniel Lo Nigro 9ade227abb Implement support for UNIX sockets.
The common use-case for Kestrel in production will be behind a reverse proxy such as Nginx. In cases where the reverse proxy is located on the same machine as the application, connecting via a UNIX socket is more efficient than a TCP socket, as it avoids going through the network layer. Accessing 127.0.0.1 through TCP still needs to initiate a TCP connection and perform handshaking, checksumming, etc, all of which is avoided by using UNIX sockets.

 - Moved TCP-specific stuff from Listener into new TcpListener class (same with ListenerPrimary and ListenerSecondary)
 - Made Listener abstract
 - Created new PipeListener. Note that while the use case is for UNIX sockets, this is called "Pipe" in uv, so I've called this "PipeListener" so the terminology is consistant
 - Uses "unix" URL scheme to determine whether to use socket. "http://127.0.0.1:5000" is for listening via TCP while "unix:///var/run/kestrel-test.sock" is for listening via UNIX socket

#156
2015-08-15 15:50:34 -07:00
David Fowler 62a909d1a7 Handle broken assembly versions on mono 2015-08-15 03:12:59 -07:00
Stephen Halter 753d64660d Ignore zero length writes when automatically chunking responses
- Zero length writes would previously be interpreted as the end of response
- Optimize writing the chunked response suffix
- Add tests for automatic response chunking
2015-08-14 15:59:47 -07:00
Stephen Halter 3fb33119ee Initial non-optimized support for automatically chunking responses 2015-08-14 15:59:39 -07:00
Stephen Halter 32c4f314b6 Lock around Connection.End to make it thread-safe 2015-08-14 12:17:06 -07:00
Stephen Halter 4f0480a4d0 Gracefully handle exceptions thrown from OnStarting callbacks
- If OnStarting is being called after the app func has completed, return a 500.
- If Onstarting is being called due to a call to write, throw from write.
2015-08-14 12:05:43 -07:00
Stephen Halter 6a01043e1a Fix ListenerSecondary so it reliably accepts new connections on Windows
Calling uv_read_start on a named pipe with a larger than necessary buffer
would cause pieces of the next uv_ipc_frame_uv_stream struct to be read into
the uv_read_start buffer when a lot of tcp handles were passed quickly over
the pipe.

This prevented the struct from properly being queued for the next call to
uv_accept to consume. The empty queue caused the call to uv_accept in
ListenerSecondary to fail and return WSAEWOULDBLOCK leaving the connection
in a zombie state.
2015-08-14 11:57:21 -07:00
Stephen Halter c0cc511b5b Prevent access to closed socket in in Connection.End 2015-08-14 11:49:45 -07:00
Stephen Halter b162202519 Properly close keep alive connections 2015-08-14 11:49:43 -07:00
Chris R 43ebf710ab Fix regression in reading config 2015-08-14 09:33:02 -07:00
Kirthi Krishnamraju c7535f127c fix build break due to aspnet\configuration #246 2015-08-13 22:42:48 -07:00
Stephen Halter 097fb35ddf Fix startup when you reference the assembly directly instead of Hosting
- I missed this change in Program.cs when doing the initial package merging
2015-08-12 15:14:01 -07:00
Kiran Challa 9275250f6e Fix build break 2015-08-12 13:10:09 -07:00
Kiran Challa 8d416d998b Enable pinning build script 2015-08-11 17:09:02 -07:00
Stephen Halter d97b02696f Merge Kestrel into Microsoft.AspNet.Server.Kestrel 2015-08-11 14:56:20 -07:00
Stephen Halter a2983f355c Merge branch 'benaadams/sample-return-task' into dev 2015-08-11 12:47:11 -07:00
Stephen Halter 0ac3c3dad6 More ConfigureAwait(false) 2015-08-11 12:46:08 -07:00
Stephen Halter 688ad9bee7 Merge branch 'benaadams/configure-awaits' into dev 2015-08-11 12:34:53 -07:00
Stephen Halter b2226772e3 Expand timeout in SocketOutputTests due to flakiness on the CI server
#154
2015-08-07 12:27:04 -07:00
Stephen Halter 5dfca955b3 Move GeneratedCode project so no NuGet package gets created 2015-08-05 12:22:59 -07:00