diff options
author | David Woodhouse <David.Woodhouse@intel.com> | 2010-06-25 12:25:38 +0100 |
---|---|---|
committer | David Woodhouse <David.Woodhouse@intel.com> | 2010-06-28 14:04:37 +0100 |
commit | 7542842bcaf47323d519a1ec49b818315baf2dcd (patch) | |
tree | 08e712491bc9c3811821e70edcae015969ff651b | |
parent | 959c2e831f18d8c1e0abf0c49ded47a0148b1c0b (diff) | |
download | evolution-data-server-7542842bcaf47323d519a1ec49b818315baf2dcd.tar.gz |
Handle BYE response
(cherry picked from commit 0b52c6b9ef0ed9a27942bc7cf6493886a9db0967)
-rw-r--r-- | camel/providers/imapx/camel-imapx-server.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/camel/providers/imapx/camel-imapx-server.c b/camel/providers/imapx/camel-imapx-server.c index a17c6d150..7b1c8159f 100644 --- a/camel/providers/imapx/camel-imapx-server.c +++ b/camel/providers/imapx/camel-imapx-server.c @@ -1522,12 +1522,22 @@ imapx_untagged(CamelIMAPXServer *imap, CamelException *ex) } break; } + case IMAPX_BYE: { + guchar *token; + + camel_imapx_stream_text (imap->stream, &token, ex); + if (!camel_exception_is_set(ex)) { + c(printf("BYE: %s\n", token)); + camel_exception_setv(ex, 1, "IMAP server said BYE: %s", token); + } + break; + } case IMAPX_PREAUTH: c(printf("preauthenticated\n")); if (imap->state < IMAPX_AUTHENTICATED) imap->state = IMAPX_AUTHENTICATED; /* fall through... */ - case IMAPX_BYE: case IMAPX_OK: case IMAPX_NO: case IMAPX_BAD: + case IMAPX_OK: case IMAPX_NO: case IMAPX_BAD: /* TODO: validate which ones of these can happen as unsolicited responses */ /* TODO: handle bye/preauth differently */ camel_imapx_stream_ungettoken(imap->stream, tok, token, len); |