anchor.diff:  %%   by default.</dd>
   %%  <dt>keyfile</dt><dd>Optional. Path to the file containing the user's
   %%   private PEM encoded key.</dd>
  +%%  <dt>next_protocols_advertised</dt><dd>Optional. Erlang R16B+ required.
  +%%   List of protocols advertised by TLS Next Protocol Negotiation
  +%%   extension.</dd>
   %%  <dt>nodelay</dt><dd>Optional. Enable TCP_NODELAY. Enabled by default.</dd>
   %%  <dt>password</dt><dd>Optional. String containing the user's password.
   %%   All private keyfiles must be password protected currently.</dd>
  
positive.code: 	%% 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],
  		[binary, {active, false}, {packet, raw},
  			{reuseaddr, true}, {nodelay, true}])).
  
  
negative.code: -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()}
  	| {next_protocols_advertised, [binary()]} | {nodelay, boolean()}
  	| {password, string()} | {port, inet:port_number()}
  	| {verify, ssl:verify_type()}])
  	-> {ok, ssl:sslsocket()} | {error, atom()}.
  