aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWilmer van der Gaast <wilmer@gaast.net>2006-10-02 18:42:32 +0200
committerWilmer van der Gaast <wilmer@gaast.net>2006-10-02 18:42:32 +0200
commit501b4e06244dbd333ee207ceade37592482e0fe7 (patch)
tree213f0da4777c8b4bd5c74c3f32273a9ef5057d19
parentd9282b4b3a7a1264bf7952e5de4dbd10b6aa5e4e (diff)
Added a useful error message for SASL negotiation failures and turned off
the little hack in jabber_write() for now because it breaks error handling.
-rw-r--r--protocols/jabber/io.c8
-rw-r--r--protocols/jabber/sasl.c1
2 files changed, 8 insertions, 1 deletions
diff --git a/protocols/jabber/io.c b/protocols/jabber/io.c
index 8834c906..634e5b99 100644
--- a/protocols/jabber/io.c
+++ b/protocols/jabber/io.c
@@ -51,7 +51,10 @@ int jabber_write( struct gaim_connection *gc, char *buf, int len )
/* Try if we can write it immediately so we don't have to do
it via the event handler. If not, add the handler. (In
most cases it probably won't be necessary.) */
+ /* Disabling this trick for now because there's really not
+ a good way to catch errors yet. :-(
if( jabber_write_callback( gc, jd->fd, GAIM_INPUT_WRITE ) )
+ */
jd->w_inpa = b_input_add( jd->fd, GAIM_INPUT_WRITE, jabber_write_callback, gc );
}
else
@@ -63,7 +66,10 @@ int jabber_write( struct gaim_connection *gc, char *buf, int len )
jd->tx_len += len;
}
- /* FIXME: write_callback could've generated a real error! */
+ /* FIXME: write_callback could've generated a real error! Have to
+ find a way to find out if we have to return 0 here. Looking for
+ ourselves in the linked list of connections is a possibility,
+ but it'd be too time-consuming... */
return 1;
}
diff --git a/protocols/jabber/sasl.c b/protocols/jabber/sasl.c
index 39d45c9b..a9676338 100644
--- a/protocols/jabber/sasl.c
+++ b/protocols/jabber/sasl.c
@@ -63,6 +63,7 @@ xt_status sasl_pkt_mechanisms( struct xt_node *node, gpointer data )
if( !sup_plain && !sup_digest )
{
+ hide_login_progress( gc, "No known SASL authentication schemes supported" );
signoff( gc );
return XT_ABORT;
}