im.pidgin.cpw.resiak.disconnectreason: 316ef0de73d77863904568b8eb44781ee0f6ada2
resiak at soc.pidgin.im
resiak at soc.pidgin.im
Sun Nov 11 17:00:41 EST 2007
-----------------------------------------------------------------
Revision: 316ef0de73d77863904568b8eb44781ee0f6ada2
Ancestor: 1097e5cce225d8c22fc9905a8bd87b7b0f8dabbf
Author: resiak at soc.pidgin.im
Date: 2007-11-11T21:22:12
Branch: im.pidgin.cpw.resiak.disconnectreason
Modified files:
libpurple/connection.c
ChangeLog:
Consensus on #pidgin is that certificate errors and AUTHENTICATION_IMPOSSIBLE
(which occurs, for example, when the server and Pidgin speak no common auth
method on xmpp) should be fatal. This leaves us with exactly one non-fatal
condition: network errors.
-------------- next part --------------
============================================================
--- libpurple/connection.c 0c12c7f2d006f4eebf507c4273a0fd92976d4928
+++ libpurple/connection.c 749a89a3ae7d6503b98dc0147f35098ce609f5a2
@@ -578,7 +578,16 @@ purple_connection_error_is_fatal (Purple
switch (reason)
{
case PURPLE_CONNECTION_ERROR_NETWORK_ERROR:
+ return FALSE;
+ case PURPLE_CONNECTION_ERROR_INVALID_USERNAME:
+ case PURPLE_CONNECTION_ERROR_INCORRECT_PASSWORD:
+ case PURPLE_CONNECTION_ERROR_AUTHENTICATION_FAILED:
case PURPLE_CONNECTION_ERROR_AUTHENTICATION_IMPOSSIBLE:
+ case PURPLE_CONNECTION_ERROR_NO_SSL_SUPPORT:
+ case PURPLE_CONNECTION_ERROR_ENCRYPTION_ERROR:
+ case PURPLE_CONNECTION_ERROR_NAME_IN_USE:
+ case PURPLE_CONNECTION_ERROR_INVALID_SETTINGS:
+ case PURPLE_CONNECTION_ERROR_OTHER_ERROR:
case PURPLE_CONNECTION_ERROR_CERT_NOT_PROVIDED:
case PURPLE_CONNECTION_ERROR_CERT_UNTRUSTED:
case PURPLE_CONNECTION_ERROR_CERT_EXPIRED:
@@ -587,15 +596,6 @@ purple_connection_error_is_fatal (Purple
case PURPLE_CONNECTION_ERROR_CERT_FINGERPRINT_MISMATCH:
case PURPLE_CONNECTION_ERROR_CERT_SELF_SIGNED:
case PURPLE_CONNECTION_ERROR_CERT_OTHER_ERROR:
- return FALSE;
- case PURPLE_CONNECTION_ERROR_INVALID_USERNAME:
- case PURPLE_CONNECTION_ERROR_INCORRECT_PASSWORD:
- case PURPLE_CONNECTION_ERROR_AUTHENTICATION_FAILED:
- case PURPLE_CONNECTION_ERROR_NO_SSL_SUPPORT:
- case PURPLE_CONNECTION_ERROR_ENCRYPTION_ERROR:
- case PURPLE_CONNECTION_ERROR_NAME_IN_USE:
- case PURPLE_CONNECTION_ERROR_INVALID_SETTINGS:
- case PURPLE_CONNECTION_ERROR_OTHER_ERROR:
return TRUE;
default:
g_return_val_if_reached(TRUE);
More information about the Commits
mailing list