Age | Commit message (Collapse) | Author |
|
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.
|
|
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.
|
|
|
|
|
|
Order of options in listen is undocumented but significant. Now user option will
replace default value if user set it.
|
|
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.
|
|
Implements the `shutdown` option as documented previously.
|
|
Doing this in the connection process allows us to free acceptors
to start accepting more connections quicker, especially under load.
|
|
|
|
|
|
|
|
We just don't need this process anymore. Less, simpler code!
API changes:
* Protocols start_link first argument is now Ref instead of ListenerPid
* ranch:accept_ack/1 argument is now Ref instead of ListenerPid
* ranch_listener:remove_connection/1 becomes ranch:remove_connection/1
and its argument is now Ref instead of ListenerPid
Ref is the name of the listener given as first argument to start_listener/6.
|
|
This patch lets the user set and use raw socket options as described in
inet:setopts/2 documentation.
The raw options can be useful to use TCP features that are platform-
specific and not supported in inet in general, such as TCP_DEFER_ACCEPT
or TCP_LINGER2 in linux stacks, for example.
|
|
It is non_neg_integer() | infinity. Introduce the type
`ranch:max_conns/0` for easier manipulation.
|
|
|
|
Tests were constantly failing without this patch. It seems ct
starts erlang code server in interactive mode, so application
module loading is defered.
|
|
|
|
|
|
At the same time we make the 'port' option optional, defaulting to 0.
|
|
|
|
ranch:get_port/1 returns the given listener's port.
|
|
Also use one export per line to improve future diffs.
Bump the version to 0.2.1 to reflect this change.
|
|
Modules were renamed. The 'cowboy_' prefix became 'ranch_'.
At the same time, ranch_ssl_transport became ranch_ssl,
and ranch_tcp_transport became ranch_tcp, because appending
'_transport' felt a bit redundant considering SSL and TCP
clearly are transports.
One test has been added to make sure everything is working.
|