diff options
| author | Wilmer van der Gaast <wilmer@gaast.net> | 2006-05-26 15:06:20 +0200 | 
|---|---|---|
| committer | Wilmer van der Gaast <wilmer@gaast.net> | 2006-05-26 15:06:20 +0200 | 
| commit | 60487448f3d0f3f7bb4710716e0ee257ee2edf16 (patch) | |
| tree | 6a2f36025cd1f501587042b0a06b2b234ded0231 /protocols | |
| parent | 7bfd574a6dc85b365f4a7a397ad5ca681faeb0e4 (diff) | |
Added SB_FATAL to MSN errorcode 911 so BitlBee won't disconnect from MSN
completely when a switchboard connection sends that error code.
Diffstat (limited to 'protocols')
| -rw-r--r-- | protocols/msn/sb.c | 10 | ||||
| -rw-r--r-- | protocols/msn/tables.c | 2 | 
2 files changed, 7 insertions, 5 deletions
| diff --git a/protocols/msn/sb.c b/protocols/msn/sb.c index 234be1d6..34b0a30a 100644 --- a/protocols/msn/sb.c +++ b/protocols/msn/sb.c @@ -522,14 +522,14 @@ static int msn_sb_command( gpointer data, char **cmd, int num_parts )  		if( err->flags & STATUS_SB_FATAL )  		{  			msn_sb_destroy( sb ); -			return( 0 ); +			return 0;  		} -		if( err->flags & STATUS_FATAL ) +		else if( err->flags & STATUS_FATAL )  		{  			signoff( gc ); -			return( 0 ); +			return 0;  		} -		if( err->flags & STATUS_SB_IM_SPARE ) +		else if( err->flags & STATUS_SB_IM_SPARE )  		{  			if( sb->who )  			{ @@ -552,6 +552,8 @@ static int msn_sb_command( gpointer data, char **cmd, int num_parts )  				g_slist_free( sb->msgq );  				sb->msgq = NULL;  			} +			 +			/* Do NOT return 0 here, we want to keep this sb. */  		}  	}  	else diff --git a/protocols/msn/tables.c b/protocols/msn/tables.c index f8e98350..5ba9ea73 100644 --- a/protocols/msn/tables.c +++ b/protocols/msn/tables.c @@ -126,7 +126,7 @@ const struct msn_status_code msn_status_code_list[] =  	{ 800, "Changing too rapidly",                                  0 },  	{ 910, "Server is busy",                                        STATUS_FATAL }, -	{ 911, "Authentication failed",                                 STATUS_FATAL }, +	{ 911, "Authentication failed",                                 STATUS_SB_FATAL | STATUS_FATAL },  	{ 912, "Server is busy",                                        STATUS_FATAL },  	{ 913, "Not allowed when hiding",                               0 },  	{ 914, "Server is unavailable",                                 STATUS_FATAL }, | 
