Alexander Krotov
0b743c6bc3
imap: use anyhow for error handling
...
There is already free-form Error::Other error type, and SqlError had
incorrect error description (a copy from InTeardown).
2020-08-30 15:04:07 +03:00
Alexander Krotov
42bd9f71f0
imap: store ServerLoginParam instead of its fields
...
This prevents errors when copying it field-by-field.
2020-08-23 16:31:26 +03:00
Alexander Krotov
064d62e758
Imap.connect: copy security setting
2020-08-23 16:31:26 +03:00
Hocuri
0fc57bdb35
Separate IMAP and SMTP configuration
...
Co-Authored-By: link2xt <ilabdsf@gmail.com >
Co-Authored-By: bjoern <r10s@b44t.com >
2020-08-22 21:29:39 +03:00
Alexander Krotov
c7d72d64cc
Schedule resync on UID validity change
2020-08-22 14:46:06 +03:00
Alexander Krotov
b4c85c534d
Add a job to resync folder UIDs
2020-08-22 14:46:06 +03:00
Hocuri
1325b2f7c6
Fix #1791 Receive group system messages from blocked users ( #1823 )
...
Fix #1791 and show all group messages if the user already is in the group, even if the sender is blocked
Also fix a comment
Co-authored-by: link2xt <ilabdsf@gmail.com >
2020-08-21 11:57:37 +02:00
Alexander Krotov
a9faaa5cbc
Update async-imap to fix Oauth2
2020-08-16 12:00:00 +03:00
dignifiedquire
1ae49c1fca
unify events
2020-08-10 10:32:48 +02:00
Alexander Krotov
ea0aa4a93f
Imap.select_with_uidvalidity(): read all the IMAP responses
2020-08-07 23:36:12 +03:00
Alexander Krotov
b83f3e5ea0
imap: read all UID STORE responses
...
Otherwise these FETCH responses will remain unread and may be confused
with the actual FETCH response later.
2020-08-07 23:36:12 +03:00
Alexander Krotov
6c7d7f0c16
Imap.delete_msg(): read the whole UID FETCH response
2020-08-07 23:36:12 +03:00
Alexander Krotov
1bfc8d0300
Imap.delete_msg(): warn about unexpected FETCH responses
...
Such responses indicate IMAP client or server bug.
2020-08-07 23:36:12 +03:00
Hocuri
6e8808f69b
Download possible ndns also if the contact is blocked
...
Before, if the user had blocked their mailer daemon (like me), ndns were
not parsed.
2020-08-01 16:14:32 +02:00
Alexander Krotov
cde587fefa
idle: drain unsolicited response channel
...
This prevents multiple unsolicited messages from skipping multiple IDLEs.
Also skip IDLE only if an EXISTS message was received.
2020-07-16 11:55:51 +02:00
holger krekel
fc12beda24
fix a problem where IDLE would run but miss messages
2020-07-16 11:55:51 +02:00
Alexander Krotov
7bb6890f26
Send MDNs for messages deleted on the server
...
Now MarkseenMsgOnImap sends MDN even if it can't mark the message as
seen on the server.
To prevent multiple MDNs from being sent, MarkseenMsgOnImap is postponed
until the message is detected in a folder from which it is not going to
be moved.
2020-07-14 23:26:48 +03:00
bjoern
f1b3527ad0
Merge pull request #1613 from deltachat/warn-wrong-pw
...
Show a better toast and a notification when the password is wrong (because it was changed on the server)
2020-07-13 13:12:31 +02:00
Alexander Krotov
1e84e81e7d
imap: expunge folder before IDLE if needed
...
This ensures Inbox is expunged timely in setups that don't watch
DeltaChat folder.
2020-07-13 00:54:20 +03:00
Alexander Krotov
18e4abc1df
Remove some and deny new indexing and slicing
2020-07-11 21:43:02 +03:00
Hocuri
86bc54508f
More explicit
2020-07-11 14:27:15 +02:00
Hocuri
ae2fd4014a
Emit Event::ErrorNetwork again
2020-07-11 14:27:15 +02:00
Hocuri
2c23433185
Make it work
...
Add a mutex to prevent a race condition when a "your pw is wrong" warning is sent, resulting in multiple messeges being sent.
Do not mute the device chat but "only" send MsgsChanged event when no
notification shall be shown.
More logging.
2020-07-11 14:27:15 +02:00
Hocuri
3f2e67f07a
First try for notification
2020-07-11 14:27:14 +02:00
Hocuri
06a4f15995
Better warning if the pw is wrong
2020-07-11 14:27:14 +02:00
Alexander Krotov
0ae8663eed
imap: call dc_receive_imf sequentially
...
Parallel processing of messages results in bugs such as messages sent by
a new member being processed before the message that adds this member to
the chat, even when it has lower UID. In this case, messages are shown as
"[Unknown sender for this chat. See 'info' for more details.]", while
there is a message "Member ... added" right before, because writing the
information about new member to the database takes longer then reading
old index from the database.
2020-07-10 00:40:52 +03:00
Alexander Krotov
43c4816739
Display source for IMAP IDLE errors
2020-07-08 01:32:49 +03:00
dignifiedquire
7d08397b48
cleanup interrupt and exit of imap idle
2020-07-07 16:09:13 +03:00
Alexander Krotov
b5400cf551
Refactor imap/mod.rs to avoid indexing
...
Also replace assert! with debug_assert!
2020-06-19 00:56:01 +03:00
dignifiedquire
baff13ecab
fix warnings and bugs, noticed on nightly
2020-06-17 19:27:27 +02:00
Hocuri
40c9c2752b
Parse ndns from Tiscali
2020-06-17 10:39:05 +02:00
Hocuri
15b30ceed1
check for sender mailer-daemon as link2xt proposed
2020-06-13 17:29:38 +02:00
Hocuri
45b871f76d
Look at From instead of Subject and ContentType in prefetch_should_download.
2020-06-13 14:18:16 +02:00
Hocuri
9f1112833f
let prefetch_should_download() check if it might be an ndn
2020-06-13 12:06:30 +02:00
Alexander Krotov
f5156f3df6
IMAP: logout from the server with a LOGOUT command
...
CLOSE, which was used previously, only expunges messages and deselects
folder, and it should only be called if some folder is selected. For that,
Imap.close_folder() method is used.
2020-06-11 13:54:14 +02:00
Alexander Krotov
19b53c76da
Add strict_tls support
2020-06-10 10:52:53 +03:00
Hocuri
05e1c00cd1
fix: update message ids correctly
...
Fixes #1495
2020-06-05 16:27:22 +02:00
dignifiedquire
86c6b09814
fix: trigger reconnects when errors occur during idle and fetch
2020-06-03 15:40:54 +02:00
dignifiedquire
7addb15be5
fix(imap): deterministically detect folder meaning
2020-06-02 15:18:24 +02:00
dignifiedquire
6100a23e80
fix: avoid lock for probe_network, avoiding deadlock on startup
...
Closes #1532
2020-05-27 15:13:29 +02:00
dignifiedquire
157dd44df0
refactor: improve structure of fetch_messages
...
also fixes updating last_seen_uid to the correct value
2020-05-25 17:03:08 +02:00
dignifiedquire
72d4da0095
feat(imap): process incoming messages in bulk
2020-05-24 00:06:39 +02:00
dignifiedquire
0ea442ca36
feat: add chat::send_msg_sync
2020-05-23 18:56:45 +02:00
dignifiedquire
133ff4914d
first pass at resolving CR
2020-05-19 17:26:22 +02:00
dignifiedquire
af56ebb04e
Merge remote-tracking branch 'origin/master' into feat/async-jobs
2020-05-19 12:07:34 +02:00
Hocuri
ab253744f8
Code style
2020-05-16 15:07:01 +02:00
B. Petersen
eafb7b979d
make clippy happy
2020-05-16 00:09:22 +02:00
B. Petersen
9e22bf39cc
smoother searching for sentbox
...
search for the sentbox in two passes:
- first check the folder attributes
- only if that fails, check for some known names
this way, the sent-attribute always has precedence
over the name; this was not the case before.
moreover, this fixes an possibly wrong early exist
when the attribute list is completely empty.
2020-05-16 00:01:42 +02:00
B. Petersen
fc6691ce5b
add 'sentmail' to the list of known names for 'sent', acutally used by chello.at
2020-05-15 23:05:23 +02:00
dignifiedquire
8a7923c974
Merge remote-tracking branch 'origin/master' into feat/async-jobs
2020-05-13 18:29:22 +02:00