↑日記で日々積み重ねた情報をトップの「わんこのページ」にまとめています。

おのたく日記 [RDF] YouTubeも始めました→


2008-05-18(Sun) ejabberd突然gmailとの接続ができなくなる [長年日記]

[Debian][XMPP]ejabberd突然gmailとの接続ができなくなる

XMPPクライアントにはPidginつかっているのだけど、MSN Transportのテストのためにejabberedサーバなどを再起動を繰り返していたら、gmailのユーザーが「404: リモート・サーバが見つかりません」となって接続できなくなった。ejabberdのログを見ると

I(<0.429.0>:ejabberd_s2s:353) : New s2s connection started <0.430.0>

I(<0.430.0>:ejabberd_s2s_out:984) : Trying to open s2s connection: xmpp.on-o.com -> gmail.com

I(<0.430.0>:ejabberd_s2s_out:313) : Connection established: xmpp.on-o.com -> gmail.com

となって接続が成功するはずが、

I(<0.1303.0>:ejabberd_s2s:353) : New s2s connection started <0.1347.0>

I(<0.1347.0>:ejabberd_s2s_out:984) : Trying to open s2s connection: xmpp.on-o.com -> gmail.com

I(<0.1347.0>:ejabberd_s2s_out:319) : Closing s2s connection: xmpp.on-o.com -> gmail.com (invalid dialback key)

と、dialbakc keyが変だとエラーになっている。ソースを見ると

wait_for_validation({xmlstreamelement, El}, StateData) ->

case is_verify_res(El) of

{result, To, From, Id, Type} ->

?DEBUG("recv result: ~p", [{From, To, Id, Type}]),

case Type of

"valid" ->

send_queue(StateData, StateData#state.queue),

?INFO_MSG("Connection established: ~s -> ~s",

[StateData#state.myname, StateData#state.server]),

ejabberd_hooks:run(s2s_connect_hook,

[StateData#state.myname,

StateData#state.server]),

{next_state, stream_established,

StateData#state{queue = queue:new()}};

_ ->

%% TODO: bounce packets

?INFO_MSG("Closing s2s connection: ~s -> ~s (invalid dialback key)",

[StateData#state.myname, StateData#state.server]),

{stop, normal, StateData}

end;

[ejabberd:/trunk/src/ejabberd_s2s_out.erl revision 1332より引用]

となっていた。「%% TODO: bounce packets」ってどういう事よ!

本日のPingbacks(全0件)

Google Web検索 on-o.com内を検索