aboutsummaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)Author
2019-01-02Don't send the default port in the host header for HTTP/1.1Loïc Hoguin
2018-12-31Disable keepalive by default for HTTP/1.1Loïc Hoguin
This is safer as servers may reject too many extra empty lines.
2018-12-31Separate request/4,5,6 into headers/4,5 and request/5,6Loïc Hoguin
This cleaner separation gets rid of the implicit body check that was causing issues for many users. Now the body is either given explicitly or it is expected via future gun:data/3 calls.
2018-12-31Fix stripping stream reference in gun_httpPiotr Bober
An invalid stream reference (the websocket tuple wrapper) was sent in the gun_data message. Also moves autobahn to its own test suite.
2018-12-31Ignore socket errors in gun_ws:close/2Loïc Hoguin
2018-12-19Convert the gun process to gen_statemLoïc Hoguin
2018-10-31The method must be a binary in cow_http2_machineLoïc Hoguin
2018-10-31Fix the error sent when we receive an RST_STREAMLoïc Hoguin
2018-10-30Switch to cow_http2_machine for HTTP/2Loïc Hoguin
A common state machine for Gun and Cowboy will be easier to maintain. This fixes numerous issues including some test failures that were hidden because the h2specd_SUITE was flawed. We temporarily depend on Cowlib master until a new version is released.
2018-10-01Document the protocols option for WebsocketMichal Piotrowski
2018-10-01Remove unreachable clauses pointed out by DialyzerLoïc Hoguin
2018-10-01Fix the remaining h2specd test failuresLoïc Hoguin
2018-10-01Handle HTTP/2 continuation framesLoïc Hoguin
Fixes most h2specd tests.
2018-09-28Ignore HTTP/2 frames of unknown typesLoïc Hoguin
2018-09-26Don't crash on HEADERS frames with PRIORITY flag setLoïc Hoguin
2018-09-26Remove gun:dbg_send_raw/2Loïc Hoguin
The same can now be achieved using gun:info to retrieve the socket. This function was not documented and was only used in the old Cowboy test suite.
2018-09-26Add the socket in the gun:info mapLoïc Hoguin
This is used by Cowboy for tests.
2018-09-26Don't send keep-alive while waiting for CONNECT responsesLoïc Hoguin
Otherwise this can mess up the underlying protocol we will switch to, like TLS or HTTP/2.
2018-09-26Keep track of the intermediaries the connection go throughLoïc Hoguin
Also augment the CONNECT tests to confirm that the intermediaries are accounted for.
2018-09-20Use ALPN when proxying TLS connections using CONNECTLoïc Hoguin
This fixes HTTP/2 over TLS connections. The protocol destination option has been deprecated in favor of a protocols option.
2018-09-17Add HTTP/1.1 CONNECT supportLoïc Hoguin
Gun can now be used to connect through TCP HTTP/1.1 proxies using all supported protocols. It is also possible to create a tunnel through multiple proxies. Also updates Cowlib to 2.6.0.
2018-08-06Fix some whitespaceLoïc Hoguin
2018-08-06Fix the status code passed to content handlersLoïc Hoguin
The integer form is expected, not the binary.
2018-08-06Fix the type of SSL sockets in the transport moduleLoïc Hoguin
2018-08-06Fix some types that were referring to CowboyLoïc Hoguin
2018-07-27Fix OTP 21 warningsLoïc Hoguin
2018-06-04Support Unix domain sockets when building host headersSimon Thörnqvist
2018-06-04Update copyright yearsLoïc Hoguin
2018-06-04Add some todos for laterLoïc Hoguin
2018-06-04Remove the dependency on RanchLoïc Hoguin
We instead of two new modules, gun_tcp and gun_tls. They only have 6 functions so far, much less than what Ranch provided before. Also renames ssl to tls where applicable. It's still possible to use the ssl transport option but it's now undocumented.
2018-06-03Rename gun_data and gun_sse to gun_data_h and gun_sse_hLoïc Hoguin
2018-06-03Change messages to gun_upgrade and gun_ws with stream referenceLoïc Hoguin
2018-06-03Also flush trailersLoïc Hoguin
2018-06-03Fill in the options types instead of using map()Loïc Hoguin
2018-06-03Reorder the option checksLoïc Hoguin
2018-06-03Fix the inet:ip_address() typeLoïc Hoguin
2018-05-15Allow IP tuple for host #152Seudin Kasumovic
2018-05-07Import the HTTP/2 send_data function from CowboyLoïc Hoguin
Few changes were required so that's pretty good. It will be split off in a separate common module at a later time.
2018-01-22Add missing gun_inform clausesAndrei Nesterov
2018-01-21Do not expect a message body for 204, 304 status codes of HTTP/1.1Andrei Nesterov
2018-01-21Fix HTTP/1 cancel #140Peter Hizalev
2017-12-16Add support for unix socketsmichael-coles
2017-12-14Change the {gone, Reason} to {shutdown, Reason} plus small fixesLoïc Hoguin
The reason for this change is to avoid annoying supervisor logs when SASL logging is enabled.
2017-12-06Don't send transfer-encoding for HTTP/1.0Loïc Hoguin
2017-11-15Fix a potential issue finding end of headers in HTTP/1.1Loïc Hoguin
This is a bit less efficient but necessary in case we start getting the beginning of \r\n\r\n and it cuts just there.
2017-11-15Add preliminary support for trailersLoïc Hoguin
The code is definitely not the best, but as long as it doesn't break anything it should be OK for now.
2017-10-29Add support for informational responsesLoïc Hoguin
2017-10-06Don't error out when the owner is gone normallyLoïc Hoguin
2017-09-02Fix gun_http2:handle/2 when goaway is receivedEduardo Gurgel
2017-08-14Allow an infinity keepalive value1.0.0-pre.4Loïc Hoguin
This disables the keepalive mechanism entirely.