History log of /haiku/src/add-ons/mail_daemon/inbound_protocols/imap/IMAPConnectionWorker.h (Results 1 – 10 of 10)
Revision Date Author Comments
# 6fa27973 09-Dec-2018 Peter Kosyh <p.kosyh@gmail.com>

IMAP: sync fixes

This patch should fix:

- deadlocks while manual syncing/shutdown;
- crashes while manual syncing/shutdown.

Change-Id: I0962ff5580c19cbf740d002b6f62681ed5f558ab
Reviewed-on: https:

IMAP: sync fixes

This patch should fix:

- deadlocks while manual syncing/shutdown;
- crashes while manual syncing/shutdown.

Change-Id: I0962ff5580c19cbf740d002b6f62681ed5f558ab
Reviewed-on: https://review.haiku-os.org/758
Reviewed-by: Stephan Aßmus <superstippi@gmx.de>

show more ...


# bab64f65 19-Feb-2016 Alexander von Gluck IV <Alex.vonGluck@r1soft.com>

Merge remote-tracking branch 'upstream/master' into intel-extreme


# 81805393 04-Jan-2016 Axel Dörfler <axeld@pinc-software.de>

IMAP: setting flags, and body fetching works now.

* The direct methods in BMailProtocol now forward the request to the
looper; it's no longer the mail_daemon's responsibility to know
anything ab

IMAP: setting flags, and body fetching works now.

* The direct methods in BMailProtocol now forward the request to the
looper; it's no longer the mail_daemon's responsibility to know
anything about that protocol.
* It's in desperate need of refactoring, but it doesn't hurt to add
it to the repository as is.

show more ...


# 46019292 18-Jul-2013 Axel Dörfler <axeld@pinc-software.de>

IMAP: let mail retrieval scale better.

* We now also maintain a mail index -> UID array in IMAPMailbox.
* Instead of fetching the message entries by a fixed range of UIDs, we use the
message count

IMAP: let mail retrieval scale better.

* We now also maintain a mail index -> UID array in IMAPMailbox.
* Instead of fetching the message entries by a fixed range of UIDs, we use the
message count, and get the entries by index.
* Likewise, in FetchHeadersCommand, we now get a list of UIDs rather than a
range. This makes it possible to only download exactly the headers we want.
* Extended FetchCommand to be able to dynamically build a sequence list from
a list of UIDs.
* Besides the suboptimal body fetching (one at a time, due to holes in the
IMAP specification), we should now be able to retrieve the messages with
pretty much optimal performance, while retaining an acceptable responsiveness
to user requests.

show more ...


# 29e5da6f 13-May-2013 Axel Dörfler <axeld@pinc-software.de>

IMAP: allow only one sync at a time, divided header fetching.

* CheckMailboxesCommand, and FetchHeadersCommand now inherit from SyncCommand
which will prevent new CheckMailboxesCommand to be enque

IMAP: allow only one sync at a time, divided header fetching.

* CheckMailboxesCommand, and FetchHeadersCommand now inherit from SyncCommand
which will prevent new CheckMailboxesCommand to be enqueued.
* FetchHeadersCommand now only retrieves up to kMaxFetchEntries headers at
once. This gets the same TODO about scaling as the limit in
CheckMailboxesCommand when fetching the flags/UIDs. Since we already read
all new UIDs at that point, we could easily do better there, though.

show more ...


# 229c7773 14-Apr-2013 Axel Dörfler <axeld@pinc-software.de>

imap: Testing for new messages is now working.

* There is now a CheckSubscribedFoldersCommand that is issued on the main
connection that triggers everything.
* The new CheckMailboxesCommand divide

imap: Testing for new messages is now working.

* There is now a CheckSubscribedFoldersCommand that is issued on the main
connection that triggers everything.
* The new CheckMailboxesCommand divides the new mail check into several
portions, and requeues itself until the next step, ie. the
FetchHeadersCommand.
* The headers of the new mails are downloaded, but nothing is done with
them yet.
* The actual check for the new mails doesn't scale that well yet, not sure
how to properly do this without having to rely on the mail indices. Might
be sensible to solve this via some simple heuristic.

show more ...


# 7993ddfa 10-Apr-2013 Axel Dörfler <axeld@pinc-software.de>

imap: Fleshed out command processing.

* Still doesn't do anything useful, though.


# a4bdd26d 05-Apr-2013 Axel Dörfler <axeld@pinc-software.de>

imap: Work in progress of connection setup.

* SelectCommand now correctly encodes the mailbox name again.
* Hierarchy separators from the LIST/LSUB commands are now properly parsed,
and taken into

imap: Work in progress of connection setup.

* SelectCommand now correctly encodes the mailbox name again.
* Hierarchy separators from the LIST/LSUB commands are now properly parsed,
and taken into account.
* Folders in the file system are now created for mailboxes on the server,
supporting hierarchical mailbox names.
* A connection worker now has an IMAPFolder that handles the local side of the
mailbox, and an IMAPMailbox that handles the server side.
* Connection workers are now created/deleted, and setup correctly. They will
now also wait in case they don't have a mailbox until they get some.

show more ...


# adbe8fc9 25-Mar-2013 Axel Dörfler <axeld@pinc-software.de>

IMAP: The connection workers are now started.

* On SyncMessages(), the main connection worker is started if it is not already
running (it may only run already in idle mode).
* This will then list

IMAP: The connection workers are now started.

* On SyncMessages(), the main connection worker is started if it is not already
running (it may only run already in idle mode).
* This will then list the subscribed folders, and create as many more connection
workers as allowed and make sense.
* Finally, it will distribute the folders to the workers which don't do anything
further yet.

show more ...


# 9192d4dc 14-Dec-2011 Axel Dörfler <axeld@pinc-software.de>

Started working on the IMAP add-on itself.

* Renamed imap_config.cpp to ConfigView.cpp, IMAPFolderConfig.(h|cpp)
to FolderConfigWindow.(h|cpp).
* Got the latter to build.
* Added Settings class to

Started working on the IMAP add-on itself.

* Renamed imap_config.cpp to ConfigView.cpp, IMAPFolderConfig.(h|cpp)
to FolderConfigWindow.(h|cpp).
* Got the latter to build.
* Added Settings class to simplify and unify the BMessage based
settings access.
* Removed the InboundProtocol[Thread] implementation from the build for now.

show more ...