From 11a63571bc2ac5790d6e349d742d87b48a781e41 Mon Sep 17 00:00:00 2001 From: Matthias Andree Date: Sat, 25 Sep 2010 17:24:57 +0200 Subject: Cancel SASL AUTH properly on GSSAPI errors. --- gssapi.c | 4 ++-- imap.c | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/gssapi.c b/gssapi.c index 65582e52..67231505 100644 --- a/gssapi.c +++ b/gssapi.c @@ -179,9 +179,9 @@ int do_gssauth(int sock, const char *command, const char *service, decode_status("gss_init_sec_context", maj_stat, min_stat); (void)gss_release_name(&min_stat, &target_name); - /* wake up server and await NO response */ + /* wake up server and cancel authentication */ suppress_tags = TRUE; - gen_send(sock, ""); + gen_send(sock, "*"); suppress_tags = FALSE; result = gen_recv(sock, buf1, sizeof buf1); diff --git a/imap.c b/imap.c index e22fea40..4738361d 100644 --- a/imap.c +++ b/imap.c @@ -574,7 +574,6 @@ static int imap_getauth(int sock, struct query *ctl, char *greeting) ctl->server.truename, ctl->remotename))) { /* SASL cancellation of authentication */ - gen_send(sock, "*"); if (ctl->server.authenticate != A_ANY) return ok; } else { -- cgit v1.2.3