diff options
Diffstat (limited to '')
-rw-r--r-- | src/ejabberd_c2s.erl | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/ejabberd_c2s.erl b/src/ejabberd_c2s.erl index 358b1fe3..5afd6cc5 100644 --- a/src/ejabberd_c2s.erl +++ b/src/ejabberd_c2s.erl @@ -1267,6 +1267,9 @@ handle_info({route, From, To, Packet}, StateName, StateData) -> handle_info({'DOWN', Monitor, _Type, _Object, _Info}, _StateName, StateData) when Monitor == StateData#state.socket_monitor -> {stop, normal, StateData}; +handle_info({peername, IP}, StateName, StateData) -> + ejabberd_sm:set_session_ip(StateData#state.sid, IP), + fsm_next_state(StateName, StateData#state{ip = IP}); handle_info(Info, StateName, StateData) -> ?ERROR_MSG("Unexpected info: ~p", [Info]), fsm_next_state(StateName, StateData). |