History log of /haiku-fatelf/src/add-ons/mail_daemon/inbound_protocols/imap/imap_lib/IMAPProtocol.cpp
Revision Date Author Comments
# a9bd4e48 29-Oct-2011 Axel Dörfler <axeld@pinc-software.de>

* More minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42973 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4b2c09b6 28-Oct-2011 Axel Dörfler <axeld@pinc-software.de>

* Style cleanup.
* Changed quote from double to uint64.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42946 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 45f20f8f 22-May-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Fix reading long lines in multiple bunches. Thanks pulkomandy for testing.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41651 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 86be65dc 16-Mar-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Disconnect connection if login failed.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40976 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8b254785 09-Mar-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

The IDLE watching command is supposed to timeout after 29 min if nothing happens. Add an mechanism to not treat this timeout as an
error.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40894 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f686f2f5 09-Mar-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Cleanup the ongoing commands when disconnect otherwise we wait for them forever the next time.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40891 a95241bf-73f2-0310-859d-f6bbb57e9c96


# faad3340 06-Mar-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Fix endless loop when try to logout and the connection is already lost.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40830 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8209ab9c 28-Feb-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Hopefully handle cases when the connection to the server is lost. This should trigger a reconnect.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40748 a95241bf-73f2-0310-859d-f6bbb57e9c96


# dc2577cf 08-Feb-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Map one or more server mailboxes two a local directory. All subscribed mailboxes are fetched automatically and populated under the root account folder. On startup the local copy is synced with the server, means all local changes are rejected. (We should think about store offline changes and apply them when online)
Also the read flags are synced with the server. This makes it easy to have the same mailbox state on different machines.

Messages could be deleted by delete them form the folder (not when moving them to trash) This maybe needs some more thoughts but its a save solution. One problem with moving it to trash is that you also want to have the option to restore it again. If it is a header only messages and you delete it from the server you lose the body part. Complete messages could theoretically be append to the mailbox again when restoring the mail form trash. Append is commented out though...

An solution for the delete problem would be to move the message to a trash folder on the server. Moving mails on the server is not implemented yet, though.

You can subscribe or unsubscribe to a mailbox using the imap pref panel. The settings are written to the server and are not stored locally.

Add some helper classes which could also be used for POP and SMTP:
ServerConnection: abstract ssl or socket connection
ConnectionReader (still a bit IMAP specific but could be easily separated IMHO): read complete lines or a bunch of data more efficient. Old implementation did it byte by byte, this class read data in bunches and buffer the left over for the next request...



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40399 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a9bd4e48ebd86de4929a793f6eb21c8476c04195 29-Oct-2011 Axel Dörfler <axeld@pinc-software.de>

* More minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42973 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4b2c09b6b34063de5c7625c6846ff547cff23cd5 28-Oct-2011 Axel Dörfler <axeld@pinc-software.de>

* Style cleanup.
* Changed quote from double to uint64.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42946 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 45f20f8f9175eaa689dda2a683ec49435efc2bca 22-May-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Fix reading long lines in multiple bunches. Thanks pulkomandy for testing.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41651 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 86be65dc7a37f59b2a8bf74ff6adf467c6c42ae7 16-Mar-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Disconnect connection if login failed.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40976 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8b254785bba2218ddd929cf3b858d6b9a377018d 09-Mar-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

The IDLE watching command is supposed to timeout after 29 min if nothing happens. Add an mechanism to not treat this timeout as an
error.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40894 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f686f2f564de82b143af0bbfabe3403e15ced998 09-Mar-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Cleanup the ongoing commands when disconnect otherwise we wait for them forever the next time.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40891 a95241bf-73f2-0310-859d-f6bbb57e9c96


# faad334022bdf56f1f10f6b5d2a46e61bc353a5b 06-Mar-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Fix endless loop when try to logout and the connection is already lost.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40830 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8209ab9c983dbf4621e78faa91b582f4d404bb38 28-Feb-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Hopefully handle cases when the connection to the server is lost. This should trigger a reconnect.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40748 a95241bf-73f2-0310-859d-f6bbb57e9c96


# dc2577cf2dd812e84a8907a4df16b28e78ad8600 08-Feb-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Map one or more server mailboxes two a local directory. All subscribed mailboxes are fetched automatically and populated under the root account folder. On startup the local copy is synced with the server, means all local changes are rejected. (We should think about store offline changes and apply them when online)
Also the read flags are synced with the server. This makes it easy to have the same mailbox state on different machines.

Messages could be deleted by delete them form the folder (not when moving them to trash) This maybe needs some more thoughts but its a save solution. One problem with moving it to trash is that you also want to have the option to restore it again. If it is a header only messages and you delete it from the server you lose the body part. Complete messages could theoretically be append to the mailbox again when restoring the mail form trash. Append is commented out though...

An solution for the delete problem would be to move the message to a trash folder on the server. Moving mails on the server is not implemented yet, though.

You can subscribe or unsubscribe to a mailbox using the imap pref panel. The settings are written to the server and are not stored locally.

Add some helper classes which could also be used for POP and SMTP:
ServerConnection: abstract ssl or socket connection
ConnectionReader (still a bit IMAP specific but could be easily separated IMHO): read complete lines or a bunch of data more efficient. Old implementation did it byte by byte, this class read data in bunches and buffer the left over for the next request...



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40399 a95241bf-73f2-0310-859d-f6bbb57e9c96