summaryrefslogtreecommitdiff
authoralwin <alwin>2003-12-25 20:10:26 (UTC)
committer alwin <alwin>2003-12-25 20:10:26 (UTC)
commitbde1302aed8a0e2506684eaae7c2d2d823de42c6 (patch) (side-by-side diff)
tree24b16fc0f0c969df001615a00ac08a8bd4acd2df
parent67d7f0b0fc79377fba216e556785f6c630c437ad (diff)
downloadopie-bde1302aed8a0e2506684eaae7c2d2d823de42c6.zip
opie-bde1302aed8a0e2506684eaae7c2d2d823de42c6.tar.gz
opie-bde1302aed8a0e2506684eaae7c2d2d823de42c6.tar.bz2
try to resolve timeouts via NOOP statement in login
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/imapwrapper.cpp9
-rw-r--r--noncore/net/mail/libmailwrapper/imapwrapper.cpp9
2 files changed, 14 insertions, 4 deletions
diff --git a/noncore/net/mail/imapwrapper.cpp b/noncore/net/mail/imapwrapper.cpp
index 89ec7ab..ab20249 100644
--- a/noncore/net/mail/imapwrapper.cpp
+++ b/noncore/net/mail/imapwrapper.cpp
@@ -33,8 +33,13 @@ void IMAPwrapper::login()
/* we are connected this moment */
/* TODO: setup a timer holding the line or if connection closed - delete the value */
if (m_imap) {
- mailstream_flush(m_imap->imap_stream);
- return;
+ err = mailimap_noop(m_imap);
+ if (err!=MAILIMAP_NO_ERROR) {
+ logout();
+ } else {
+ mailstream_flush(m_imap->imap_stream);
+ return;
+ }
}
server = account->getServer().latin1();
port = account->getPort().toUInt();
diff --git a/noncore/net/mail/libmailwrapper/imapwrapper.cpp b/noncore/net/mail/libmailwrapper/imapwrapper.cpp
index 89ec7ab..ab20249 100644
--- a/noncore/net/mail/libmailwrapper/imapwrapper.cpp
+++ b/noncore/net/mail/libmailwrapper/imapwrapper.cpp
@@ -33,8 +33,13 @@ void IMAPwrapper::login()
/* we are connected this moment */
/* TODO: setup a timer holding the line or if connection closed - delete the value */
if (m_imap) {
- mailstream_flush(m_imap->imap_stream);
- return;
+ err = mailimap_noop(m_imap);
+ if (err!=MAILIMAP_NO_ERROR) {
+ logout();
+ } else {
+ mailstream_flush(m_imap->imap_stream);
+ return;
+ }
}
server = account->getServer().latin1();
port = account->getPort().toUInt();