]> granicus.if.org Git - ejabberd/commitdiff
Fix some dialyzer warnings
authorEvgeniy Khramtsov <ekhramtsov@process-one.net>
Thu, 16 Feb 2017 11:18:36 +0000 (14:18 +0300)
committerEvgeniy Khramtsov <ekhramtsov@process-one.net>
Thu, 16 Feb 2017 11:18:36 +0000 (14:18 +0300)
src/cyrsasl_digest.erl
src/ejabberd_captcha.erl
src/ejabberd_receiver.erl
src/ejabberd_router_multicast.erl
src/gen_mod.erl
src/mod_admin_extra.erl
src/mod_announce.erl
src/mod_client_state.erl
src/mod_delegation.erl
src/mod_legacy_auth.erl

index fa5c5338bf107ce62b6cab53efa6ce736760b4fc..a91566b66f927da16fead460c63e380abb8055f3 100644 (file)
@@ -39,7 +39,7 @@
 
 -type get_password_fun() :: fun((binary()) -> {false, any()} |
                                               {binary(), atom()}).
--type check_password_fun() :: fun((binary(), binary(), binary(),
+-type check_password_fun() :: fun((binary(), binary(), binary(), binary(),
                                    fun((binary()) -> binary())) ->
                                            {boolean(), any()} |
                                            false).
@@ -51,8 +51,8 @@
                 nonce = <<"">> :: binary(),
                 username = <<"">> :: binary(),
                 authzid = <<"">> :: binary(),
-                get_password = fun(_) -> {false, <<>>} end :: get_password_fun(),
-                check_password = fun(_, _, _, _, _) -> false end :: check_password_fun(),
+                get_password :: get_password_fun(),
+                check_password :: check_password_fun(),
                 auth_module :: atom(),
                 host = <<"">> :: binary(),
                 hostfqdn = <<"">> :: binary() | [binary()]}).
@@ -111,7 +111,7 @@ mech_step(#state{step = 3, nonce = Nonce} = State,
                  {false, _} -> {error, not_authorized, UserName};
                  {Passwd, AuthModule} ->
                      case (State#state.check_password)(UserName, UserName, <<"">>,
-                                   proplists:get_value(<<"response">>, KeyVals, <<>>),
+                                                       proplists:get_value(<<"response">>, KeyVals, <<>>),
                                                        fun (PW) ->
                                                                response(KeyVals,
                                                                         UserName,
index 5ab6cf980c7ad30ad7fe1fecdf1dc6b951a45870..1762457821a0d740190698447f8ad670305570ac 100644 (file)
@@ -56,7 +56,7 @@
 -record(state, {limits = treap:empty() :: treap:treap()}).
 
 -record(captcha, {id :: binary(),
-                  pid :: pid(),
+                  pid :: pid() | undefined,
                   key :: binary(),
                   tref :: reference(),
                   args :: any()}).
index 13c6d3b7fc360f56d40d5db8a347a17e1902fc14..253ca93b4e1013a317c40087b15203bc3f986a6a 100644 (file)
@@ -93,7 +93,7 @@ change_shaper(Pid, Shaper) ->
 
 reset_stream(Pid) -> do_call(Pid, reset_stream).
 
--spec starttls(pid(), fast_tls:tls_socket()) -> ok.
+-spec starttls(pid(), fast_tls:tls_socket()) -> ok | {error, any()}.
 
 starttls(Pid, TLSSocket) ->
     do_call(Pid, {starttls, TLSSocket}).
index c2a99528d21657806b926ada3c7325e9ace3c196..bb2442b4ffd6ea8ba9b28b5e64db8112e7c688d6 100644 (file)
@@ -218,7 +218,7 @@ code_change(_OldVsn, State, _Extra) ->
 do_route(Domain, Destinations, Packet) ->
     ?DEBUG("route multicast:~n~s~nDomain: ~s~nDestinations: ~s~n",
           [xmpp:pp(Packet), Domain,
-           str:join([jid:to_string(To) || To <- Destinations], ", ")]),
+           str:join([jid:to_string(To) || To <- Destinations], <<", ">>)]),
     %% Try to find an appropriate multicast service
     case mnesia:dirty_read(route_multicast, Domain) of
 
index 578b3e7e07790a3c5e3ecbda4cc87860fa3ca766..20774369e81bb16d9fda9aacad03c07abd0da8f3 100644 (file)
@@ -52,7 +52,7 @@
          opts = [] :: opts() | '_' | '$2'}).
 
 -type opts() :: [{atom(), any()}].
--type db_type() :: sql | mnesia | riak.
+-type db_type() :: atom().
 
 -callback start(binary(), opts()) -> ok | {ok, pid()}.
 -callback stop(binary()) -> any().
index c9b87c177eae0d6f34c4bcc485817bc88c999544..fc07faacb531c65cc6fdaf368f8bdab43bfbccea 100644 (file)
@@ -1460,7 +1460,7 @@ send_stanza(FromString, ToString, Stanza) ->
     try
        #xmlel{} = El = fxml_stream:parse_element(Stanza),
        #jid{} = From = jid:from_string(FromString),
-       #jid{} = To = jid:to_string(ToString),
+       #jid{} = To = jid:from_string(ToString),
        Pkt = xmpp:decode(El, ?NS_CLIENT, [ignore_els]),
        ejabberd_router:route(xmpp:set_from_to(Pkt, From, To))
     catch _:{xmpp_codec, Why} ->
index 2c3730122ae82e6d4031030f7a938d5c6af8f8ec..29def8378675ef30376a37730367a554cc881bbb 100644 (file)
@@ -406,7 +406,7 @@ commands_result(Allow, From, To, Request) ->
            announce_commands(From, To, Request)
     end.
 
--spec announce_commands(adhoc_command(), jid(), jid(), adhoc_command()) ->
+-spec announce_commands(empty | adhoc_command(), jid(), jid(), adhoc_command()) ->
                               adhoc_command() | {error, stanza_error()}.
 announce_commands(Acc, From, #jid{lserver = LServer} = To,
                  #adhoc_command{node = Node} = Request) ->
index f57e3e32d660d53c5752bf8ff2da1bd5520323c4..d912bef507bfab50a45d36f5d106c6c30c994f6c 100644 (file)
@@ -253,7 +253,7 @@ filter_other({Stanza, #{jid := JID} = C2SState} = Acc) when ?is_stanza(Stanza) -
 filter_other(Acc) ->
     Acc.
 
--spec add_stream_feature([xmpp_element()], binary) -> [xmpp_element()].
+-spec add_stream_feature([xmpp_element()], binary()) -> [xmpp_element()].
 add_stream_feature(Features, Host) ->
     case gen_mod:is_loaded(Host, ?MODULE) of
        true ->
index ec58b3c46c25843b20c7a2ef2ad84844e7bc0c55..b3377fe75803b31808eb7941c99fcdce5bdd5d68 100644 (file)
@@ -65,8 +65,7 @@ mod_opt_type(_) ->
 depends(_, _) ->
     [].
 
--spec decode_iq_subel(xmpp_element()) -> xmpp_element();
-                    (xmlel()) -> xmlel().
+-spec decode_iq_subel(xmpp_element() | xmlel()) -> xmpp_element() | xmlel().
 %% Tell gen_iq_handler not to auto-decode IQ payload
 decode_iq_subel(El) ->
     El.
index 03a7c91af164546dc26cefa321c0a07ea95939b8..16770983cbc9cd5eb168e8e021cc232dfc1bcd3b 100644 (file)
@@ -31,6 +31,8 @@
 
 -include("xmpp.hrl").
 
+-type c2s_state() :: ejabberd_c2s:state().
+
 %%%===================================================================
 %%% API
 %%%===================================================================
@@ -52,6 +54,8 @@ depends(_Host, _Opts) ->
 mod_opt_type(_) ->
     [].
 
+-spec c2s_unauthenticated_packet(c2s_state(), iq()) ->
+      c2s_state() | {stop, c2s_state()}.
 c2s_unauthenticated_packet(State, #iq{type = T, sub_els = [_]} = IQ)
   when T == get; T == set ->
     case xmpp:get_subtag(IQ, #legacy_auth{}) of
@@ -63,6 +67,7 @@ c2s_unauthenticated_packet(State, #iq{type = T, sub_els = [_]} = IQ)
 c2s_unauthenticated_packet(State, _) ->
     State.
 
+-spec c2s_stream_features([xmpp_element()], binary()) -> [xmpp_element()].
 c2s_stream_features(Acc, LServer) ->
     case gen_mod:is_loaded(LServer, ?MODULE) of
        true ->
@@ -74,6 +79,7 @@ c2s_stream_features(Acc, LServer) ->
 %%%===================================================================
 %%% Internal functions
 %%%===================================================================
+-spec authenticate(c2s_state(), iq()) -> c2s_state().
 authenticate(#{server := Server} = State,
             #iq{type = get, sub_els = [#legacy_auth{}]} = IQ) ->
     LServer = jid:nameprep(Server),
@@ -129,6 +135,7 @@ authenticate(#{stream_id := StreamID, server := Server,
            process_auth_failure(State, U, Err, 'forbidden')
     end.
 
+-spec open_session(c2s_state(), iq(), binary()) -> c2s_state().
 open_session(State, IQ, R) ->
     case ejabberd_c2s:bind(R, State) of
        {ok, State1} ->
@@ -139,6 +146,7 @@ open_session(State, IQ, R) ->
            ejabberd_c2s:send(State1, Res)
     end.
 
+-spec process_auth_failure(c2s_state(), binary(), stanza_error(), atom()) -> c2s_state().
 process_auth_failure(State, User, StanzaErr, Reason) ->
     State1 = ejabberd_c2s:send(State, StanzaErr),
     ejabberd_c2s:handle_auth_failure(User, <<"legacy">>, Reason, State1).