mirror of
https://github.com/seriyps/mtproto_proxy.git
synced 2026-08-27 04:15:50 +00:00
Fix some dialyzer errors
This commit is contained in:
parent
447639224f
commit
414e7bc037
6 changed files with 16 additions and 23 deletions
|
|
@ -56,7 +56,7 @@ try_decode_packet_len(Len, LenStripped, Data, St) ->
|
|||
{incomplete, St#st{buffer = Data}}
|
||||
end.
|
||||
|
||||
-spec encode_packet(binary(), codec()) -> iodata().
|
||||
-spec encode_packet(binary(), codec()) -> {iodata(), codec()}.
|
||||
encode_packet(Bin, St) ->
|
||||
Size = byte_size(Bin),
|
||||
Len = Size div 4,
|
||||
|
|
|
|||
|
|
@ -19,8 +19,9 @@
|
|||
-export_type([codec/0]).
|
||||
|
||||
-type state() :: any().
|
||||
-type crypto_codec() :: mtb_aes_cbc
|
||||
| mtp_obfuscated.
|
||||
-type crypto_codec() :: mtp_aes_cbc
|
||||
| mtp_obfuscated
|
||||
| mtp_noop_codec.
|
||||
-type packet_codec() :: mtp_abridged
|
||||
| mtp_full
|
||||
| mtp_intermediate
|
||||
|
|
@ -58,6 +59,7 @@ decompose(#codec{crypto_mod = CryptoMod, crypto_state = CryptoState,
|
|||
|
||||
|
||||
%% try_decode_packet(Inner) |> try_decode_packet(Outer)
|
||||
-spec try_decode_packet(binary(), codec()) -> {ok, binary(), codec()} | {incomplete, codec()}.
|
||||
try_decode_packet(Bin, #codec{crypto_mod = CryptoMod,
|
||||
crypto_state = CryptoSt,
|
||||
packet_mod = PacketMod,
|
||||
|
|
@ -80,6 +82,7 @@ try_decode_packet(Bin, #codec{crypto_mod = CryptoMod,
|
|||
end.
|
||||
|
||||
%% encode_packet(Outer) |> encode_packet(Inner)
|
||||
-spec encode_packet(iodata(), codec()) -> {iodata(), codec()}.
|
||||
encode_packet(Bin, #codec{packet_mod = PacketMod,
|
||||
packet_state = PacketSt,
|
||||
crypto_mod = CryptoMod,
|
||||
|
|
|
|||
|
|
@ -92,14 +92,9 @@ handle_cast(shutdown, State) ->
|
|||
handle_info({tcp, Sock, Data}, #state{sock = Sock} = S) ->
|
||||
mtp_metric:count_inc([?APP, received, bytes], byte_size(Data), #{labels => [downstream]}),
|
||||
mtp_metric:histogram_observe([?APP, tracker_packet_size, bytes], byte_size(Data), #{labels => [downstream]}),
|
||||
case handle_downstream_data(Data, S) of
|
||||
{ok, S1} ->
|
||||
ok = inet:setopts(Sock, [{active, once}]),
|
||||
{noreply, S1};
|
||||
{error, Reason} ->
|
||||
lager:error("Error sending tunnelled data to in socket: ~p", [Reason]),
|
||||
{stop, normal, S}
|
||||
end;
|
||||
{ok, S1} = handle_downstream_data(Data, S),
|
||||
ok = inet:setopts(Sock, [{active, once}]),
|
||||
{noreply, S1};
|
||||
handle_info({tcp_closed, Sock}, #state{sock = Sock} = State) ->
|
||||
{stop, normal, State};
|
||||
handle_info({tcp_error, Sock, Reason}, #state{sock = Sock} = State) ->
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@
|
|||
transport :: transport(),
|
||||
codec :: mtp_codec:codec() | undefined,
|
||||
|
||||
down :: mtp_down_conn:handle(),
|
||||
down :: mtp_down_conn:handle() | undefined,
|
||||
dc_id :: integer(),
|
||||
|
||||
ad_tag :: binary(),
|
||||
|
|
@ -88,7 +88,7 @@ ranch_init({Ref, Transport, Opts}) ->
|
|||
{buffer, BufSize}
|
||||
]),
|
||||
gen_server:enter_loop(?MODULE, [], State);
|
||||
error ->
|
||||
{stop, error} ->
|
||||
exit(normal)
|
||||
end.
|
||||
|
||||
|
|
@ -114,7 +114,7 @@ init({Socket, Transport, [Name, Secret, Tag]}) ->
|
|||
{error, Reason} ->
|
||||
mtp_metric:count_inc([?APP, in_connection_closed, total], 1, #{labels => [Name]}),
|
||||
lager:info("Can't read peername: ~p", [Reason]),
|
||||
error
|
||||
{stop, error}
|
||||
end.
|
||||
|
||||
handle_call(_Request, _From, State) ->
|
||||
|
|
@ -123,13 +123,8 @@ handle_call(_Request, _From, State) ->
|
|||
|
||||
handle_cast({proxy_ans, Down, Data}, #state{down = Down} = S) ->
|
||||
%% telegram server -> proxy
|
||||
case up_send(Data, S) of
|
||||
{ok, S1} ->
|
||||
maybe_check_health(bump_timer(S1));
|
||||
{error, Reason} ->
|
||||
lager:error("Error sending tunnelled data to in socket: ~p", [Reason]),
|
||||
{stop, normal, S}
|
||||
end;
|
||||
{ok, S1} = up_send(Data, S),
|
||||
maybe_check_health(bump_timer(S1));
|
||||
handle_cast({close_ext, Down}, #state{down = Down, sock = USock, transport = UTrans} = S) ->
|
||||
lager:debug("asked to close connection by downstream"),
|
||||
ok = UTrans:close(USock),
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@ try_decode_packet_len(Len, Data, #int_st{padding = Pad} = St) ->
|
|||
{incomplete, St#int_st{buffer = Data}}
|
||||
end.
|
||||
|
||||
-spec encode_packet(iodata(), codec()) -> iodata().
|
||||
-spec encode_packet(iodata(), codec()) -> {iodata(), codec()}.
|
||||
encode_packet(Data, #int_st{padding = Pad} = St) ->
|
||||
Size = iolist_size(Data),
|
||||
Packet = case Pad of
|
||||
|
|
|
|||
|
|
@ -24,6 +24,6 @@ new() ->
|
|||
try_decode_packet(Data, St) ->
|
||||
mtp_intermediate:try_decode_packet(Data, St).
|
||||
|
||||
-spec encode_packet(iodata(), codec()) -> iodata().
|
||||
-spec encode_packet(iodata(), codec()) -> {iodata(), codec()}.
|
||||
encode_packet(Data, St) ->
|
||||
mtp_intermediate:encode_packet(Data, St).
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue