diff options
author | Loïc Hoguin <[email protected]> | 2012-02-20 08:47:00 +0100 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2012-02-20 08:48:06 +0100 |
commit | 811d11a1a28e9d044cb328d62e3c01bb3c536fb5 (patch) | |
tree | 32967c575a6cdbe20f4d08fb67aec1a927e8eb13 /src/cowboy_ssl_transport.erl | |
parent | 9baf3e2ae91a2e541780e72b556ee98de6550193 (diff) | |
parent | e67d839154a0c031e667903da013a4a49be86ced (diff) | |
download | cowboy-811d11a1a28e9d044cb328d62e3c01bb3c536fb5.tar.gz cowboy-811d11a1a28e9d044cb328d62e3c01bb3c536fb5.tar.bz2 cowboy-811d11a1a28e9d044cb328d62e3c01bb3c536fb5.zip |
Merge branch 'ssl-password-cacert' of https://github.com/DeadZen/cowboy
Diffstat (limited to 'src/cowboy_ssl_transport.erl')
-rw-r--r-- | src/cowboy_ssl_transport.erl | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/src/cowboy_ssl_transport.erl b/src/cowboy_ssl_transport.erl index bf8b1fb..8eaf320 100644 --- a/src/cowboy_ssl_transport.erl +++ b/src/cowboy_ssl_transport.erl @@ -68,21 +68,30 @@ listen(Opts) -> {port, Port} = lists:keyfind(port, 1, Opts), Backlog = proplists:get_value(backlog, Opts, 1024), {certfile, CertFile} = lists:keyfind(certfile, 1, Opts), - {keyfile, KeyFile} = lists:keyfind(keyfile, 1, Opts), - {password, Password} = lists:keyfind(password, 1, Opts), + KeyFileOpts = + case lists:keyfind(keyfile, 1, Opts) of + false -> []; + KeyFile -> [KeyFile] + end, + PasswordOpts = + case lists:keyfind(password, 1, Opts) of + false -> []; + Password -> [Password] + end, ListenOpts0 = [binary, {active, false}, {backlog, Backlog}, {packet, raw}, {reuseaddr, true}, - {certfile, CertFile}, {keyfile, KeyFile}, {password, Password}], + {certfile, CertFile}], ListenOpts1 = case lists:keyfind(ip, 1, Opts) of false -> ListenOpts0; Ip -> [Ip|ListenOpts0] end, - ListenOpts = + ListenOpts2 = case lists:keyfind(cacertfile, 1, Opts) of false -> ListenOpts1; CACertFile -> [CACertFile|ListenOpts1] end, + ListenOpts = ListenOpts2 ++ KeyFileOpts ++ PasswordOpts, ssl:listen(Port, ListenOpts). %% @doc Accept an incoming connection on a listen socket. |