diff options
author | Loïc Hoguin <[email protected]> | 2018-07-04 12:33:30 +0200 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2018-07-04 12:33:30 +0200 |
commit | a767abb47e6d9a0817d37413e1b5c1d338b362d8 (patch) | |
tree | 8157fde9eb94bdf8cf0b4b94f252d7104889d917 /doc/src/guide | |
parent | 794a816814cbc9a126531829fae5c7e3359179c3 (diff) | |
download | ranch-a767abb47e6d9a0817d37413e1b5c1d338b362d8.tar.gz ranch-a767abb47e6d9a0817d37413e1b5c1d338b362d8.tar.bz2 ranch-a767abb47e6d9a0817d37413e1b5c1d338b362d8.zip |
Enable TLS upgrades via ranch_ssl:handshake/3
Based on the work done by @juhlig.
Diffstat (limited to 'doc/src/guide')
-rw-r--r-- | doc/src/guide/transports.asciidoc | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/doc/src/guide/transports.asciidoc b/doc/src/guide/transports.asciidoc index f5bb17e..70efa1b 100644 --- a/doc/src/guide/transports.asciidoc +++ b/doc/src/guide/transports.asciidoc @@ -144,6 +144,17 @@ possible to use a file descriptor opened in raw mode: {ok, RawFile} = file:open(Filename, [raw, read, binary]), {ok, SentBytes} = Transport:sendfile(Socket, RawFile, Offset, Bytes, Opts). +=== Upgrading a TCP socket to SSL + +A connected TCP socket can be upgraded to a SSL socket via the function +`ranch_ssl:handshake/3`. The socket *must* be in `{active, false}` mode +before telling the client that the server is ready to upgrade in order +to avoid race conditions. + +.Performing a TLS handshake on a TCP socket +[source,erlang] +{ok, NewSocket} = ranch_ssl:handshake(Socket, SslOpts, 5000). + === Writing a transport handler A transport handler is a module implementing the `ranch_transport` behavior. |