|
30 | 30 |
|
31 | 31 | -record(state, { |
32 | 32 | socket, |
33 | | - parse_state, |
34 | | - proc_state, |
| 33 | + parse_state = rabbit_mqtt_packet:initial_state() :: rabbit_mqtt_packet:state(), |
| 34 | + proc_state :: undefined | rabbit_mqtt_processor:state(), |
35 | 35 | connection_state = running :: running | blocked, |
36 | 36 | conserve = false :: boolean(), |
37 | | - stats_timer, |
| 37 | + stats_timer :: undefined | rabbit_event:state(), |
38 | 38 | keepalive = rabbit_mqtt_keepalive:init() :: rabbit_mqtt_keepalive:state(), |
39 | | - conn_name, |
| 39 | + conn_name :: undefined | binary(), |
40 | 40 | received_connect_packet = false :: boolean() |
41 | 41 | }). |
42 | 42 |
|
@@ -84,8 +84,7 @@ init(Req, Opts) -> |
84 | 84 | true -> |
85 | 85 | {?MODULE, |
86 | 86 | cowboy_req:set_resp_header(<<"sec-websocket-protocol">>, <<"mqtt">>, Req), |
87 | | - {#state{parse_state = rabbit_mqtt_packet:initial_state(), |
88 | | - socket = maps:get(proxy_header, Req, undefined)}, |
| 87 | + {#state{socket = maps:get(proxy_header, Req, undefined)}, |
89 | 88 | PeerAddr}, |
90 | 89 | WsOpts} |
91 | 90 | end |
@@ -275,10 +274,9 @@ handle_data1(Data, State = #state{ parse_state = ParseState, |
275 | 274 | {ok, Packet, Rest} -> |
276 | 275 | case rabbit_mqtt_processor:process_packet(Packet, ProcState) of |
277 | 276 | {ok, ProcState1} -> |
278 | | - PS = rabbit_mqtt_packet:initial_state(), |
279 | 277 | handle_data1( |
280 | 278 | Rest, |
281 | | - State#state{parse_state = PS, |
| 279 | + State#state{parse_state = rabbit_mqtt_packet:initial_state(), |
282 | 280 | proc_state = ProcState1}); |
283 | 281 | {error, Reason, _} -> |
284 | 282 | stop_mqtt_protocol_error(State, Reason, ConnName); |
|
0 commit comments