From 65c8766ae7a863d015e725833d06d27a81c29274 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Wed, 6 Mar 2013 20:03:21 +0100 Subject: Add next_protocols_advertised option to ranch_ssl For TLS Next Protocol Negotiation support. --- src/ranch_ssl.erl | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/ranch_ssl.erl b/src/ranch_ssl.erl index a5de96e..3155f25 100644 --- a/src/ranch_ssl.erl +++ b/src/ranch_ssl.erl @@ -70,6 +70,9 @@ messages() -> {ssl, ssl_closed, ssl_error}. %% by default. %%
keyfile
Optional. Path to the file containing the user's %% private PEM encoded key.
+%%
next_protocols_advertised
Optional. Erlang R16B+ required. +%% List of protocols advertised by TLS Next Protocol Negotiation +%% extension.
%%
nodelay
Optional. Enable TCP_NODELAY. Enabled by default.
%%
password
Optional. String containing the user's password. %% All private keyfiles must be password protected currently.
@@ -88,7 +91,8 @@ messages() -> {ssl, ssl_closed, ssl_error}. -spec listen([{backlog, non_neg_integer()} | {cacertfile, string()} | {certfile, string()} | {ciphers, [ssl:erl_cipher_suite()] | string()} | {fail_if_no_peer_cert, boolean()} - | {ip, inet:ip_address()} | {keyfile, string()} | {nodelay, boolean()} + | {ip, inet:ip_address()} | {keyfile, string()} + | {next_protocols_advertised, [binary()]} | {nodelay, boolean()} | {password, string()} | {port, inet:port_number()} | {verify, ssl:verify_type()}]) -> {ok, ssl:sslsocket()} | {error, atom()}. @@ -101,7 +105,8 @@ listen(Opts) -> %% first argument. ssl:listen(0, ranch:filter_options(Opts2, [backlog, cacertfile, certfile, ciphers, fail_if_no_peer_cert, ip, - keyfile, nodelay, password, port, raw, verify], + keyfile, next_protocols_advertised, nodelay, password, port, + raw, verify], [binary, {active, false}, {packet, raw}, {reuseaddr, true}, {nodelay, true}])). -- cgit v1.2.3