mirror of
https://github.com/processone/ejabberd.git
synced 2024-06-14 22:00:16 +02:00
Merge branch 'weiss-check-packet-type' into 3
This commit is contained in:
commit
6baf3a24de
|
@ -1208,13 +1208,7 @@ session_established2(El, StateData) ->
|
||||||
_ ->
|
_ ->
|
||||||
Err = jlib:make_error_reply(NewEl,
|
Err = jlib:make_error_reply(NewEl,
|
||||||
?ERR_JID_MALFORMED),
|
?ERR_JID_MALFORMED),
|
||||||
case is_stanza(Err) of
|
send_packet(NewStateData, Err)
|
||||||
true ->
|
|
||||||
send_stanza(NewStateData, Err);
|
|
||||||
false ->
|
|
||||||
send_element(NewStateData, Err),
|
|
||||||
NewStateData
|
|
||||||
end
|
|
||||||
end;
|
end;
|
||||||
_ ->
|
_ ->
|
||||||
case Name of
|
case Name of
|
||||||
|
@ -1647,7 +1641,7 @@ handle_info({route, From, To,
|
||||||
jlib:replace_from_to_attrs(jlib:jid_to_string(From),
|
jlib:replace_from_to_attrs(jlib:jid_to_string(From),
|
||||||
jlib:jid_to_string(To), NewAttrs),
|
jlib:jid_to_string(To), NewAttrs),
|
||||||
FixedPacket = #xmlel{name = Name, attrs = Attrs2, children = Els},
|
FixedPacket = #xmlel{name = Name, attrs = Attrs2, children = Els},
|
||||||
SentStateData = send_stanza(NewState, FixedPacket),
|
SentStateData = send_packet(NewState, FixedPacket),
|
||||||
ejabberd_hooks:run(user_receive_packet,
|
ejabberd_hooks:run(user_receive_packet,
|
||||||
SentStateData#state.server,
|
SentStateData#state.server,
|
||||||
[SentStateData#state.jid, From, To, FixedPacket]),
|
[SentStateData#state.jid, From, To, FixedPacket]),
|
||||||
|
@ -1838,6 +1832,19 @@ send_stanza(StateData, Stanza) ->
|
||||||
send_element(StateData, Stanza),
|
send_element(StateData, Stanza),
|
||||||
StateData.
|
StateData.
|
||||||
|
|
||||||
|
send_packet(StateData, Packet) when StateData#state.mgmt_state == active;
|
||||||
|
StateData#state.mgmt_state == pending ->
|
||||||
|
case is_stanza(Packet) of
|
||||||
|
true ->
|
||||||
|
send_stanza(StateData, Packet);
|
||||||
|
false ->
|
||||||
|
send_element(StateData, Packet),
|
||||||
|
StateData
|
||||||
|
end;
|
||||||
|
send_packet(StateData, Stanza) ->
|
||||||
|
send_element(StateData, Stanza),
|
||||||
|
StateData.
|
||||||
|
|
||||||
send_header(StateData, Server, Version, Lang)
|
send_header(StateData, Server, Version, Lang)
|
||||||
when StateData#state.xml_socket ->
|
when StateData#state.xml_socket ->
|
||||||
VersionAttr = case Version of
|
VersionAttr = case Version of
|
||||||
|
@ -2344,7 +2351,7 @@ resend_subscription_requests(#state{user = User,
|
||||||
ejabberd_hooks:run_fold(resend_subscription_requests_hook,
|
ejabberd_hooks:run_fold(resend_subscription_requests_hook,
|
||||||
Server, [], [User, Server]),
|
Server, [], [User, Server]),
|
||||||
lists:foldl(fun (XMLPacket, AccStateData) ->
|
lists:foldl(fun (XMLPacket, AccStateData) ->
|
||||||
send_stanza(AccStateData, XMLPacket)
|
send_packet(AccStateData, XMLPacket)
|
||||||
end,
|
end,
|
||||||
StateData,
|
StateData,
|
||||||
PendingSubscriptions).
|
PendingSubscriptions).
|
||||||
|
|
Loading…
Reference in New Issue
Block a user