Re: getmail with davmail

Graham Denham <[email protected]> Sat, 6 Feb 2021 19:33:19 +0000
Newsgroups gmane.mail.getmail.user
Message-ID <[email protected]>
> I don't use O365 (or similar cloud-based email services) so I'm not personally
> familiar with it, but I thought that when they disabled password auth they
> introduced a replacement for it - maybe called "app passwords" or "app keys"
> or something like that?  Basically a special password that can only be used to
> log into it for email and perhaps only for one app (not quite sure how they
> would enforce that).

I think Microsoft allows this option, but unfortunately my site administrators do not.  
The logic being, who wouldn’t want to use Outlook?  :-)  

> getmail that would cause it to retrieve the same message twice, so I'm
> guessing that proxy is somehow announcing the same message twice to getmail.
> I would think it would have to do it with different UIDs to make getmail
> actually download it twice.

> Crank up the verbosity level with --trace and see what UID is logged on the
> two retrievals of the same message.

Thanks, after looking through the full trace, it seems that this is what’s happening.  
E.g., getmail fetched a new message with UID 71371.  A minute later, there was 
no more 71371, but there was a 71372, which getmail dutifully received.

I looks like I have a way to reproduce the behaviour.  If the message on the 
O365 server gets its “answered” flag set then that message gets a new
UID and gets retrieved as a new message.  I haven’t read the protocol
specification, so maybe that’s really what’s supposed to happen.

One might also ask why the flag on the remote message was being changed,
since the email in that remote inbox is, in this setup, intended to sit around as
a backup.  However, I’m only offering the SMTP proxy to the mail client on localhost,
not over the network.  So the mail client on, say, my phone sends mail
directly through the O365 server.  If I reply to a message that way, the O365 server
decides to set the “answered” flag on the server copy of the email.

I suppose I could go with “delete = true” but ideally I’d understand what’s happening
here first.

thanks very much,

/Graham