Browse Source

Fix type specs for ssl:socket.

Should fix the warnings given by the Dialyzer-current build
over at http://dialyzer.softlab.ntua.gr/current/cowboy/

Thanks Kostis for the help.
Loïc Hoguin 14 years ago
parent
commit
20293be912
1 changed files with 11 additions and 13 deletions
  1. 11 13
      src/cowboy_ssl_transport.erl

+ 11 - 13
src/cowboy_ssl_transport.erl

@@ -16,8 +16,6 @@
 -export([name/0, messages/0, listen/1, accept/2, recv/3, send/2, setopts/2,
 	controlling_process/2, peername/1, close/1]). %% API.
 
--opaque sslsocket() :: term().
-
 -include_lib("kernel/include/inet.hrl").
 
 %% API.
@@ -30,7 +28,7 @@ messages() -> {ssl, ssl_closed, ssl_error}.
 
 -spec listen([{port, Port::ip_port()} | {certfile, CertPath::string()}
 	| {keyfile, KeyPath::string()} | {password, Password::string()}])
-	-> {ok, LSocket::sslsocket()} | {error, Reason::atom()}.
+	-> {ok, LSocket::ssl:sslsocket()} | {error, Reason::atom()}.
 listen(Opts) ->
 	{port, Port} = lists:keyfind(port, 1, Opts),
 	{certfile, CertFile} = lists:keyfind(certfile, 1, Opts),
@@ -40,8 +38,8 @@ listen(Opts) ->
 		{packet, raw}, {reuseaddr, true},
 		{certfile, CertFile}, {keyfile, KeyFile}, {password, Password}]).
 
--spec accept(LSocket::sslsocket(), Timeout::timeout())
-	-> {ok, Socket::sslsocket()} | {error, Reason::closed | timeout | atom()}.
+-spec accept(LSocket::ssl:sslsocket(), Timeout::timeout())
+	-> {ok, Socket::ssl:sslsocket()} | {error, Reason::closed | timeout | atom()}.
 accept(LSocket, Timeout) ->
 	case ssl:transport_accept(LSocket, Timeout) of
 		{ok, CSocket} ->
@@ -50,39 +48,39 @@ accept(LSocket, Timeout) ->
 			{error, Reason}
 	end.
 
--spec recv(Socket::sslsocket(), Length::integer(), Timeout::timeout())
+-spec recv(Socket::ssl:sslsocket(), Length::integer(), Timeout::timeout())
 	-> {ok, Packet::term()} | {error, Reason::closed | atom()}.
 recv(Socket, Length, Timeout) ->
 	ssl:recv(Socket, Length, Timeout).
 
--spec send(Socket::sslsocket(), Packet::iolist())
+-spec send(Socket::ssl:sslsocket(), Packet::iolist())
 	-> ok | {error, Reason::atom()}.
 send(Socket, Packet) ->
 	ssl:send(Socket, Packet).
 
--spec setopts(Socket::sslsocket(), Opts::list(term()))
+-spec setopts(Socket::ssl:sslsocket(), Opts::list(term()))
 	-> ok | {error, Reason::atom()}.
 setopts(Socket, Opts) ->
 	ssl:setopts(Socket, Opts).
 
--spec controlling_process(Socket::sslsocket(), Pid::pid())
+-spec controlling_process(Socket::ssl:sslsocket(), Pid::pid())
 	-> ok | {error, Reason::closed | not_owner | atom()}.
 controlling_process(Socket, Pid) ->
 	ssl:controlling_process(Socket, Pid).
 
--spec peername(Socket::sslsocket())
+-spec peername(Socket::ssl:sslsocket())
 	-> {ok, {Address::ip_address(), Port::ip_port()}} | {error, atom()}.
 peername(Socket) ->
 	ssl:peername(Socket).
 
--spec close(Socket::sslsocket()) -> ok.
+-spec close(Socket::ssl:sslsocket()) -> ok.
 close(Socket) ->
 	ssl:close(Socket).
 
 %% Internal.
 
--spec ssl_accept(CSocket::sslsocket(), Timeout::timeout())
-	-> {ok, Socket::sslsocket()} | {error, Reason::closed | timeout | atom()}.
+-spec ssl_accept(CSocket::ssl:sslsocket(), Timeout::timeout())
+	-> {ok, Socket::ssl:sslsocket()} | {error, Reason::closed | timeout | atom()}.
 ssl_accept(CSocket, Timeout) ->
 	case ssl:ssl_accept(CSocket, Timeout) of
 		ok ->