aboutsummaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)Author
2016-11-15Fix acceptors getting stuck because of socket errorsLoïc Hoguin
We always get the acceptor to resume. The child process will be killed, and the current code will ignore any EXIT message when that happens because the pid isn't in the process dictionary.
2016-11-15Track removed connectionsJames Fish
2016-11-15Improve error reportingAlexey Lebedeff
Simplify some return values, improve error messages for eaddrinuse and no_cert. Amended to add tests and simpler code. Also hides the contents of cert and key transport options, if any.
2016-11-15Add ssl to the list of dependenciesLoïc Hoguin
2016-11-08Allow listening with only SNI optionsLoïc Hoguin
Cert/certfile is no longer required if SNI options are provided.
2016-11-08Blacklist listen options instead of whitelistLoïc Hoguin
Dialyzer will still complain about unknown options, but at least users won't be stuck waiting for an upstream update.
2016-11-01Add SSL options for legacy software interoperabilityAlexandru Munteanu
2016-10-10Prevent a race condition when stopping listenersLoïc Hoguin
In some cases the ranch_server:get_connections_sup/1 call could still succeed depending on timing.
2016-10-10Ignore ets:delete/2 return value, always trueLoïc Hoguin
2016-10-09Make values for the TLS 1.2 signature_algorithms extension configurableVictor
Added in ssl-7.3.1 (OTP-13261). Documented in ssl-8.0.
2016-09-19Don't silently drop the accept rateMaas-Maarten Zeeman
2016-09-19Renaming NbAcceptors to NumAcceptorsferigis
2016-09-19Add ipv6_v6only listen optionMarc Worrell
2015-12-18Update to 1.2.11.2.1Loïc Hoguin
2015-12-18Use the default restart intensity in all supervisorsLoïc Hoguin
This reduces from 10 restarts in 10 seconds to 1 restart in 5 seconds. This is the new default in OTP 18, and it fits the kinds of processes that Ranch deals with: * Supervisors: default makes sense. * Acceptors: they crash on socket error. They'll probably crash again if the socket didn't change. * Connection processes: they are never restarted.
2015-12-18Fix node shutdown getting stuckLoïc Hoguin
When SSL is stopped before Ranch, the acceptors crash and Ranch tries to restart them. The problem is that the ranch_ssl:listen/1 call was trying to start the SSL application to make sure it works (an old artifact from when releases were not ubiquitous). Because the application controller is trying to shutdown Ranch, and Ranch tries to tell it to start an application, everything would get stuck. To avoid a breaking change, we move this in the start_listener call (or child_spec). Note that there are still logs when the SSL application is closed, because the acceptors crash. But at least we don't block node shutdown anymore. In Ranch 2.0, we will implement the proper fix which is to simply depend on the SSL application normally. Nowadays, it's not too difficult to build a release that excludes applications we don't want, although we should document that in the Ranch user guide.
2015-11-16Update to 1.2.01.2.0Loïc Hoguin
2015-10-16Update to 1.2.0-rc.11.2.0-rc.1Loïc Hoguin
2015-08-25Add an error message when Transport:listen failsLoïc Hoguin
Should be more user friendly.
2015-08-25Add ranch:get_addr/1Loïc Hoguin
2015-08-22Print a warning when discarding an option on listener startupLoïc Hoguin
2015-08-20Ensure ranch_conns_sup doesn't crash on protocol start crashLoïc Hoguin
2015-08-20Add tests and more docs about separate supervisor/connectionLoïc Hoguin
2015-08-20Supervised and connection process can now be differentLoïc Hoguin
2015-08-20Filter out all unknown options, not just 2-tuple onesLoïc Hoguin
For example 'binary' was making things crash.
2015-08-18Welcome to 2015Loïc Hoguin
2015-08-18Update the list of allowed transport optionsLoïc Hoguin
We are now up to date with regard to transport options we should accept for the listening socket. Documentation of existing options has been updated with regard to recent changes in the OTP docs and type specifications.
2015-08-17Don't pass Ranch-specific options down to transportsLoïc Hoguin
Should fix Dialyzer issues. The options are now also documented in the Ranch module, and there's new ranch:opt(), ranch_tcp:opt() and ranch_ssl:opt() for use in third party code.
2015-03-06Handle Transport:controlling_socket/2 errors and close the socketLoïc Hoguin
2015-03-06Fix start_listener specLoïc Hoguin
2014-11-06Update Ranch to 1.1.01.1.0Loïc Hoguin
2014-11-06Update erlang.mkLoïc Hoguin
2014-11-02support ssl partial_chain featureAndre Graf
2014-09-11Merge branch 'add_transport_secure' of git://github.com/matrixise/ranchLoïc Hoguin
2014-09-11Merge branch 'ssl_closed' of git://github.com/yjh0502/ranchLoïc Hoguin
2014-09-11Don't report error on ssl {error, closed}Jihyun Yu
SSL socket might be closed on accept_ack, it happens quite often and it is not a problem, so don't report error on the case.
2014-09-02Add Transport:secure/0Stéphane Wirtel
Currently Ranch checks if a connection is secure by checking if its name is 'ssl'. This isn't a very modular solution, adding an API function that returns whether a connection is secure.
2014-08-01Update Ranch to 1.0.0Loïc Hoguin
2014-06-10Update Ranch to 0.100.10.0Loïc Hoguin
2014-06-10Update copyright yearsLoïc Hoguin
2014-06-03Merge branch 'fix_inherit' of git://github.com/nevar/ranchLoïc Hoguin
2014-06-03Fix inherit listen options for accepted socketSlava Yurin
Order of options in listen is undocumented but significant. Now user option will replace default value if user set it.
2014-04-30additional ssl option supportRansom Richardson
2014-04-23Ignore some errors that may occur during handshakeLoïc Hoguin
These errors just pollute the logs when garbage is sent to the socket. Exit the process normally to avoid unwanted logs.
2013-12-07Add Transport:shutdown/2Loïc Hoguin
Allows closing the socket in one or two directions.
2013-12-07Get rid of a ton of pointless commentsLoïc Hoguin
All of it can be found in the manual, which defines what the code must do, and is always up to date unlike the code comments.
2013-12-07Add transport options linger, send_timeout, send_timeout_closeLoïc Hoguin
2013-12-07Merge branch 'connect_timeout' of git://github.com/heroku/ranchLoïc Hoguin
2013-12-07Add an error report when a connection process fails to startLoïc Hoguin
Becoming closer to a standard supervisor everyday.
2013-12-07Gracefully shutdown when stop_listener/1 is calledLoïc Hoguin
Implements the `shutdown` option as documented previously.