diff options
author | Brendan Cully <brendan@kublai.com> | 2005-08-12 22:33:00 +0000 |
---|---|---|
committer | Brendan Cully <brendan@kublai.com> | 2005-08-12 22:33:00 +0000 |
commit | 7167f49e4b89d5fccd82a9af6fab8f0d9d36fe24 (patch) | |
tree | 4c683a06dece5f77e024ac7bfd53f8a35b2e45ee /imap/auth_sasl.c | |
parent | 2819f7006e9a2cac9f3324b757ffa8d43ef54f9f (diff) |
Override SASL initial response if the server spoke first in its
continuation response. Closes: #2034.
Diffstat (limited to 'imap/auth_sasl.c')
-rw-r--r-- | imap/auth_sasl.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/imap/auth_sasl.c b/imap/auth_sasl.c index a76677ff..34a3bf1d 100644 --- a/imap/auth_sasl.c +++ b/imap/auth_sasl.c @@ -150,7 +150,10 @@ imap_auth_res_t imap_auth_sasl (IMAP_DATA* idata, const char* method) } } - if (!client_start) + /* client-start is only available with the SASL-IR extension, but + * SASL 2.1 seems to want to use it regardless, at least for DIGEST + * fast reauth. Override if the server sent an initial continuation */ + if (!client_start || buf[0]) { do { |