handle dialback timeouts.. thx fip

This commit is contained in:
psyc://psyced.org/~lynX 2010-01-30 23:39:47 +01:00
parent ecc5bd32e6
commit b3a307095b
4 changed files with 21 additions and 0 deletions

View File

@ -86,6 +86,15 @@ ________________________________________________________________________
? should /load inform that errors go to the console? ? should /load inform that errors go to the console?
- the ~0 bug - the ~0 bug
i found a reliable way to reproduce this ~0 uni problem
- start psyced
- connect with a native psyc client
- kill psyced while the client is connected
- start psyced again
- connect with native psyc client
it will give you this ~0 uni then
until you connect with a telnet client
but it works again after you connect & disconnect w/ a telnet client
________________________________________________________________________ ________________________________________________________________________
:_group psyc://psyced.org/@welcome :_group psyc://psyced.org/@welcome
:_source_identification psyc://xxx.no-ip.org/~xxx :_source_identification psyc://xxx.no-ip.org/~xxx
@ -3976,3 +3985,7 @@ usercmd
be negative, like -5. be negative, like -5.
user user
- psyc client _examine was falling thru to _HTML output, added return; - psyc client _examine was falling thru to _HTML output, added return;
=== 201001 ============================================================
jabber/active
+ handle dialback timeouts, thx fip

View File

@ -843,6 +843,9 @@ _failure_unsuccessful_delivery_resolve
_failure_unsuccessful_delivery_self _failure_unsuccessful_delivery_self
|Die Adresse [_host] zeigt auf [_source_origin], ist dort aber nicht vorgesehen. |Die Adresse [_host] zeigt auf [_source_origin], ist dort aber nicht vorgesehen.
_failure_unsuccessful_delivery_timeout_dialback
|Konnte kein XMPP dialback zu [_host] herstellen um [_method_relay] an [_source] auszuliefern.
_failure_unavailable_service _failure_unavailable_service
|Solch ein Dienst wird hier derzeit nicht angeboten. |Solch ein Dienst wird hier derzeit nicht angeboten.

View File

@ -664,6 +664,9 @@ _failure_unsuccessful_delivery_resolve
_failure_unsuccessful_delivery_self _failure_unsuccessful_delivery_self
|The [_host] address points to [_source_origin] which however wasn't instructed to handle that. |The [_host] address points to [_source_origin] which however wasn't instructed to handle that.
_failure_unsuccessful_delivery_timeout_dialback
|Could not establish an XMPP dialback to [_host] to deliver a [_method_relay] to [_source].
_failure_unavailable_service_version _failure_unavailable_service_version
|Requesting version from [_nick_target] is not possible. |Requesting version from [_nick_target] is not possible.

View File

@ -72,6 +72,7 @@ start_dialback() {
dialback_outgoing = 1; dialback_outgoing = 1;
emit(sprintf("<db:result to='%s' from='%s'>%s</db:result>", emit(sprintf("<db:result to='%s' from='%s'>%s</db:result>",
hostname, source_host, key)); hostname, source_host, key));
call_out(120, #'connect_failure, "_timeout_dialback", "no dialback response received, timeout");
} }
process_dialback_queue() { process_dialback_queue() {
@ -364,6 +365,7 @@ jabberMsg(XMLNode node) {
* we are originating server and are informed of the result * we are originating server and are informed of the result
*/ */
dialback_outgoing = 0; dialback_outgoing = 0;
remove_call_out(#'connect_failure);
if (node["@type"] == "valid") { if (node["@type"] == "valid") {
#ifdef LOG_XMPP_AUTH #ifdef LOG_XMPP_AUTH
D0( log_file("XMPP_AUTH", "\n%O auth dialback", ME); ) D0( log_file("XMPP_AUTH", "\n%O auth dialback", ME); )